<SEC-DOCUMENT>0001558370-24-010856.txt : 20240805
<SEC-HEADER>0001558370-24-010856.hdr.sgml : 20240805
<ACCEPTANCE-DATETIME>20240805160646
ACCESSION NUMBER:		0001558370-24-010856
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		77
CONFORMED PERIOD OF REPORT:	20240630
FILED AS OF DATE:		20240805
DATE AS OF CHANGE:		20240805

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			TACTILE SYSTEMS TECHNOLOGY INC
		CENTRAL INDEX KEY:			0001027838
		STANDARD INDUSTRIAL CLASSIFICATION:	SURGICAL & MEDICAL INSTRUMENTS & APPARATUS [3841]
		ORGANIZATION NAME:           	08 Industrial Applications and Services
		IRS NUMBER:				000000000
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		10-Q
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-37799
		FILM NUMBER:		241174770

	BUSINESS ADDRESS:	
		STREET 1:		1331 TYLER STREET NE STE 200
		CITY:			MINNEAPOLIS
		STATE:			MN
		ZIP:			55413
		BUSINESS PHONE:		866-435-3948

	MAIL ADDRESS:	
		STREET 1:		1331 TYLER STREET NE STE 200
		CITY:			MINNEAPOLIS
		STATE:			MN
		ZIP:			55413
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>tcmd-20240630x10q.htm
<DESCRIPTION>10-Q
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<!-- iXBRL document created with: Toppan Merrill Bridge iXBRL 10.7.0.1 -->
<!-- Based on: iXBRL 1.1 -->
<!-- Created on: 8/5/2024 3:21:09 PM -->
<!-- iXBRL Library version: 1.0.8923.15446 -->
<!-- iXBRL Service Job ID: 28d23087-7974-420e-a688-3aa5c8e71171 -->
<html xmlns:us-gaap="http://fasb.org/us-gaap/2024" xmlns:tcmd="http://www.tactilemedical.com/20240630" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:srt="http://fasb.org/srt/2024" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns="http://www.w3.org/1999/xhtml" xmlns:ecd="http://xbrl.sec.gov/ecd/2024" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:xbrldi="http://xbrl.org/2006/xbrldi"><head><meta content="text/html" http-equiv="content-type"/><title></title></head><body><div style="margin-top:30pt;"></div><div style="display:none;"><ix:header><ix:hidden><ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" xs:nil="true" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" name="us-gaap:CommitmentsAndContingencies" id="Hidden_1tyavwc8fEq-qCuLkULnUw"/><ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" xs:nil="true" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" name="us-gaap:CommitmentsAndContingencies" id="Hidden__tOmkg7oL0SCellgyBS6wQ"/><ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" xs:nil="true" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" name="us-gaap:PreferredStockValue" id="Hidden_aplkBkQSjE6hOyG_iywKuA"/><ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" xs:nil="true" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" name="us-gaap:PreferredStockValue" id="Hidden_jfSUXHxoIU2YHiwi68NfPA"/><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" id="Hidden_mygmtbyp6kOUizjoS0rnGg">23966748</ix:nonFraction><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_ni1p7Qcb1kOn6uu8LJJE3A" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Hidden_eZ3xB74RXU6NziO2vey1sA">P1Y</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_j4FOz7wOX0mjcAymsnF1pw" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Hidden_kLboFkrwmU241zeI964eiA">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_j4FOz7wOX0mjcAymsnF1pw" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" id="Hidden_y4t_8y311Ue2o7Uk2kMnjA">P7Y</ix:nonNumeric><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" id="Hidden_hzJ1TJJS7kexjZS7x06gvw">23600584</ix:nonFraction><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="INF" name="us-gaap:PreferredStockSharesOutstanding" id="Hidden_m6VDIuHozkiFwKxnQD-O5A">0</ix:nonFraction><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="INF" name="us-gaap:PreferredStockSharesOutstanding" id="Hidden_jKnWkU9NG0a0wl6nsLxyFg">0</ix:nonFraction><ix:nonNumeric contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" name="us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" id="Hidden_XGg9ZJfBzkKoHvrqqrYL-A">http://fasb.org/us-gaap/2024#OperatingLeaseRightOfUseAsset</ix:nonNumeric><ix:nonNumeric contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" name="us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" id="Hidden_OHsXZy9RIkGoaAAW7TpWLQ">http://fasb.org/us-gaap/2024#OperatingLeaseRightOfUseAsset</ix:nonNumeric><ix:nonNumeric contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" name="us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" id="Hidden_RYmMhvoXpkm2HlfUhjWQpw">http://fasb.org/us-gaap/2024#OperatingLeaseLiabilityCurrent</ix:nonNumeric><ix:nonNumeric contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" name="us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" id="Hidden_ONaJcHMlEEmZiK9o-8NxXA">http://fasb.org/us-gaap/2024#OperatingLeaseLiabilityCurrent</ix:nonNumeric><ix:nonNumeric contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" name="us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" id="Hidden_OCBgoeuof0yCuc0I2N4Lzw">http://fasb.org/us-gaap/2024#OperatingLeaseLiabilityNoncurrent</ix:nonNumeric><ix:nonNumeric contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" name="us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" id="Hidden_ByQg0HmP60itu9FKgG8X2w">http://fasb.org/us-gaap/2024#OperatingLeaseLiabilityNoncurrent</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:EntityCentralIndexKey" id="Tc_jLbQVyO850-_fCS63xh5-g_2_1">0001027838</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:CurrentFiscalYearEndDate" id="Tc_J1tD1oOdZEq7vExc6Qxesg_3_1">--12-31</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:DocumentFiscalYearFocus" id="Tc_axifw0MiU0m6m0sWgnc8fg_4_1">2024</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:DocumentFiscalPeriodFocus" id="Tc_HkA3uG-Mlk6GBHvgdHoNKg_5_1">Q2</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:AmendmentFlag" id="Narr_t65HmI50vUKawmJtymhYow">false</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_ITvHrCpxsES9UiwjdoAA9A" name="tcmd:RentToPurchaseArrangementsRentalPeriod" id="Hidden_284Rs177CEejvCyNOpuTsg">P3M</ix:nonNumeric><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyThreePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheOneMember_vOsaw5u-Ak6kb7sG2WRgDQ" decimals="4" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" id="Hidden_uAKG2g7mZk--CJFl0zmvdg">0.3333</ix:nonFraction><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_HFFOBoxAIk6rbkfeI7wbAQ" decimals="4" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" id="Hidden_Dc9cTpTp0kahwn8Wwp10OQ">0.3333</ix:nonFraction><ix:nonNumeric contextRef="As_Of_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_gq6lRkcCpEOw2t6Kr9Ai_Q" name="us-gaap:LesseeOperatingLeaseTermOfContract" id="Hidden_kHfwq-3Kx0yOTQftBwCcuA">P1Y</ix:nonNumeric><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFourPsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheOneMember_HP3Wi-Gsek-mkuHKXBKZaw" decimals="4" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" id="Hidden_zYXFcnFJn0-ybR_mTIZHHw">0.3333</ix:nonFraction><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentySixPsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheThreeMember_PpJE2Z1nt066kkMwprLIzA" decimals="4" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" id="Hidden_4ZqkYWgRrk6GX2MYoeozQA">0.3333</ix:nonFraction><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_HFFOBoxAIk6rbkfeI7wbAQ" decimals="4" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" id="Hidden_FQbZztpU1EeZnyJ6p9PWGg">0.3333</ix:nonFraction><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="Hidden_qxZrAitPFUeRdDk6Iart9A">P1Y10M24D</ix:nonNumeric></ix:hidden><ix:references><link:schemaRef xlink:type="simple" xlink:href="tcmd-20240630.xsd"/></ix:references><ix:resources><xbrli:context id="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_zbzxuLeuX0WA-89ngSGt1A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_S9yXGNhU9UKSi2_fDuRiQQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_e7J9PZx4B0CJsJ37JZBH6A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_DqwGVt8-C0mv1goAlHzaQQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_80kahcYOjUqGkQmzsGi_dQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_7qV41BfyZka_83Rd9E4Dnw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_3_31_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_BXxyhagQ8Ua2U2j-cXk-pw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_3_31_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_MvPSx6K0zkmhTnlK51cAaw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_RtAfzhqQc06IEEJXgu3j4w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_w04Ejjo6aEC4Vj6ji9xY6Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OO4DbeD3AEuYBsybMePZxw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_13sgjWDjcUqE7NbRxeVPXA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_3_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_6drRJqsWmEiCdYkNFfUBcg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_3_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_d36bTXgWZkiZ7EHkkq1JSQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_j5Wy2RVWcke1i_MukAuSBQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</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="As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ASCF8Ypet0u4EkCXTQBYNw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</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="As_Of_3_31_2024_s2vwRyEnHUaXSAoq3iPMfA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_3_31_2023_GzRMMUTuf06M6Ru_HEW-nQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Ja7L9bPAeEypmuDVmRH_LQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_3_31_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_B5ujXctiDUy0R8L6FWWa4Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_CLuecX-YY0KpWQKUfn-hnw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_30z85V5qLkSLDlvX5dRwEg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_3_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_kAOIRnbew0qeVvqp_HVpkQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_yLsLXAjRdk6_unp2ysQ8AQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</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="As_Of_8_2_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_IPOMember_48lQgT0IJUaPjBMtULD0Eg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:IPOMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-08-02</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_2_27_2023_us-gaap_SubsidiarySaleOfStockAxis_tcmd_FollowOnPublicOfferingMember_eEYZ3aYCoUqISGDYuO2D3Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">tcmd:FollowOnPublicOfferingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-02-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_WtVTo_t3pUifOnZF4OotMA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_BOcMZGF4UUGBZOdyCAwvQw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_1_1_2024_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_ofFDGQjvk0aI9xa2KbMZrQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-01-01</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2023_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_T6wjDTQPGEK1Gb201_e92w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2023_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X8xqXYhXF0uQc3XhVSeRLw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyThreePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheOneMember_vOsaw5u-Ak6kb7sG2WRgDQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentyThreePsuMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentySixPsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheThreeMember_PpJE2Z1nt066kkMwprLIzA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentySixPsuMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheThreeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFourPsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheOneMember_HP3Wi-Gsek-mkuHKXBKZaw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentyFourPsuMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_HFFOBoxAIk6rbkfeI7wbAQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentyFivePsuMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheTwoMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_ni1p7Qcb1kOn6uu8LJJE3A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_CRs_D8ro5kiqKnXVhcCEGg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_j4FOz7wOX0mjcAymsnF1pw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_ghJx-QtBM0SdX9JhHhCA1g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_Bvx8dB-taEaLeUjA4XBiOg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_97xY_sdV2kKwp21GIEpGMA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_VeteransAdministrationMember_dmfo4nRvy0WlW5eKfSP9ow"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:VeteransAdministrationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_PrivateInsurersMember_vq8q3f_1wEaulWVDbJ5wOA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:PrivateInsurersMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_MedicareMember_obZpUPXbM0aO8cT_GDmFwg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:MedicareMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_DurableMedicalEquipmentDistributorsMember_AEWBW7YCaEKs2kDUZ5uddA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:DurableMedicalEquipmentDistributorsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_VeteransAdministrationMember_RH6FbiMGOUSbvzKCcZKjvQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:VeteransAdministrationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_PrivateInsurersMember_UcgTVt2uw0y9LysoUAvOLA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:PrivateInsurersMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_MedicareMember_-b6LJm21NEOhzGm21yrLyA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:MedicareMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_DurableMedicalEquipmentDistributorsMember_oHNR_kLzWE6-0CByym0rkg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:DurableMedicalEquipmentDistributorsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_VeteransAdministrationMember_RHtbhnUZukqb-2vU2jp5kA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:VeteransAdministrationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_PrivateInsurersMember_DcWl6i8rcUm6MNN2Avn8qg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:PrivateInsurersMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_MedicareMember_8ZsWA13QqEKqrwCpkevwkQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:MedicareMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_DurableMedicalEquipmentDistributorsMember_9EnRkTwjgUiVB12kfJ9bQA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:DurableMedicalEquipmentDistributorsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_VeteransAdministrationMember_JZbV-5J9i0mfSTRA2TOLRg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:VeteransAdministrationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_PrivateInsurersMember_WGGJuSIalkSLzar76885Zw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:PrivateInsurersMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_MedicareMember_VFe3F2kiuEmHfZfBKs3dSg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:MedicareMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_DurableMedicalEquipmentDistributorsMember_oigy0xNv8kCsIsciRMorEA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:DurableMedicalEquipmentDistributorsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_8_1_2023_To_8_1_2023_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_eRrazF1Whkq1dksOFvNTeg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tcmd:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-08-01</xbrli:startDate><xbrli:endDate>2023-08-01</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_2_27_2023_To_2_27_2023_us-gaap_SubsidiarySaleOfStockAxis_tcmd_FollowOnPublicOfferingMember_Hqq_A7B_4Ey4takoP09X0w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">tcmd:FollowOnPublicOfferingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-27</xbrli:startDate><xbrli:endDate>2023-02-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_11_28_2023_To_11_28_2023_SKtlU9g6_ECOEbD8aG-BaA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-11-28</xbrli:startDate><xbrli:endDate>2023-11-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_ibbw37t6vEur60DioIQ0Tw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_Yedyqhznj0ylqwvdHw90Pg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_wxh6APmFhECFWHr4QthFKg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_utuRRgp72k2gz9Ez2cPuvg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_6_27_2024_To_6_27_2024_srt_LitigationCaseAxis_tcmd_WeaverLawsuitMember_4n-_hANt2UG_nH4WTTUyNA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:LitigationCaseAxis">tcmd:WeaverLawsuitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-06-27</xbrli:startDate><xbrli:endDate>2024-06-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_8_1_2023_To_8_1_2023_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_E53nVEuX30Gj6X7CEHcoFw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-08-01</xbrli:startDate><xbrli:endDate>2023-08-01</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_8_1_2023_To_8_1_2023_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_I9fehpD4L062Ap1QjHh2jg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-08-01</xbrli:startDate><xbrli:endDate>2023-08-01</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_9_8_2021_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_dQQxQiCes0iLhk0Kq3gSxg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-09-08</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_EquipmentMember_rM3vcdramEuwLITsT_ygxA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_gq6lRkcCpEOw2t6Kr9Ai_Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_EquipmentMember_htm7g8S9PkSgqk49CCeQcg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_2edHshgIxU-CWhd6nxQIGw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_srt_RangeAxis_srt_MinimumMember_4VKZ5hWU0E-xw8tULb1H6A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_EquipmentMember_wdOC90gkNU-QpUIRQiTFsg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_aYaI0ZySJkuVF2-yuAq33Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_StMZ941_S0SJsGikyNLbog"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2023_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_OpNZmYCr3ku6nMyPAfJBMg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2023_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_fBGrTaNO3kG4sW8rUuuf1w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_9_30_2021_us-gaap_BusinessAcquisitionAxis_tcmd_AfflovestPMember_HBTiVDnaWEqDE5O3XdlyeA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tcmd:AfflovestPMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_t8KDwAfkq0yuvozStzCgug"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_4CZOskMKuEmcZ4p8j9DBog"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_ukSiPh-Yb0G0BxyoHC-AHA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerContractsMember_Q-B_OUgOLke18AcQjiT36g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerContractsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_jZTyB4NJI0uhYZwjPenLSw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">tcmd:DefensiveIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_yv4OD8xh50uBTPZac1RnEg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_GOilbr9ot0SA7S3onMVWOA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_dyycOI63hE-WyBUIQuzh6A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerContractsMember_HPcRxgAafk6zHzL15wsixQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerContractsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_D5R03d1RskGByrQebaDTFw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">tcmd:DefensiveIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_g40pvLmaQk6XkNT28sbcnA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X4jTL2lGQEi5OZH6-0_06w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_5KM6x-YdRUW-jJYt7e6Uqg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_b2t1gr1hEkOEJlucH2wJQw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanNameAxis">tcmd:DefinedContribution401kRetirementPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_LH9XYxL0EkuZW5wT_nzfpg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanNameAxis">tcmd:DefinedContribution401kRetirementPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_rnIYNziCZ0u25WElTrXIVw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanNameAxis">tcmd:DefinedContribution401kRetirementPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_NttyosrxakeQDzyHbHGWeg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanNameAxis">tcmd:DefinedContribution401kRetirementPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_12_21_2023_To_12_21_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_k0YKbRb_q0SepKmBcV1dwA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-12-21</xbrli:startDate><xbrli:endDate>2023-12-21</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_XFKczmT-jUCrLNWGfjcepA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tcmd:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_9_8_2021_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_Ck326B7w_0Krb_CSgavUTw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tcmd:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-09-08</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tcmd:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_8BiJD8Q_zEiWo40hjQqQtg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_8_1_2023_To_8_1_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_H6K4sXhMr0uC9TEZR3dfnw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-08-01</xbrli:startDate><xbrli:endDate>2023-08-01</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_6_21_2023_To_6_21_2023_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_PqaXVsMPiky2DLaLBJCwBA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-06-21</xbrli:startDate><xbrli:endDate>2023-06-21</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_6_21_2023_To_6_21_2023_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_YgEkMTt31EqSINuv-ZgQOA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-06-21</xbrli:startDate><xbrli:endDate>2023-06-21</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_6_21_2023_To_6_21_2023_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_PoIgEsN7SEKhdygmFyVIKg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-06-21</xbrli:startDate><xbrli:endDate>2023-06-21</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_6_21_2023_To_6_21_2023_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_kuB6wHaW0UyfxlfGfAlHWg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-06-21</xbrli:startDate><xbrli:endDate>2023-06-21</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_6_21_2023_To_6_21_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_FederalFundsEffectiveSwapRateMember_LXTZhCgMxUycJXihNo5auw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:FederalFundsEffectiveSwapRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-06-21</xbrli:startDate><xbrli:endDate>2023-06-21</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_6_21_2023_To_6_21_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_mnKAkPDAg0iU_Cjx6Srz1g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-06-21</xbrli:startDate><xbrli:endDate>2023-06-21</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_6_21_2023_To_6_21_2023_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_wZdntAYob0q0QJExjZbHIA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-06-21</xbrli:startDate><xbrli:endDate>2023-06-21</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_6_21_2023_To_6_21_2023_j1HntEFxG0Kc_Q8vHPNODQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-06-21</xbrli:startDate><xbrli:endDate>2023-06-21</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_us-gaap_ProductMember_4y30Rvu4XkSp7uSHLJeLFQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_ILVH-vKmt0WIR5ZPg5Cc6w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:RentalProductServiceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_us-gaap_ProductMember_QSwcFcYa7UqLcB0gfKdhuQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_XVztWUeXuUaHYxz6GEAC-A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:RentalProductServiceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_HwKD6hwGZ0equ26Z4poEYQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember__lHk1zY_ZkiZZP9bct_GxQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:RentalProductServiceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_BupDevr4vEaRIVahiBu9bA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_YVbT8PtiBUW0Qj_8Fj5ITw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:RentalProductServiceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_dBewljXhJECxvJt1x7cYQw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">tcmd:VendorOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_QflaMpPnkUONvmHfNuQCTQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">tcmd:VendorOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorTwoMember_GkfxBxGEVUut5MpmfyrRDA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">tcmd:VendorTwoMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_9Pm2ilF9M0mdgNadpPa8EA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">tcmd:VendorOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_-lOENE2F9k6QTl4_q-DS5g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_1_1_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_5pYeZydTkUCyQNbFnxV3nQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-01-01</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_4_27_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_CxdJbOw2hkGAi09BZ8sXPg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-04-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2022_8ruiuWr-P02VR3cPNU5Dgw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_3_31_2023_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_sFbAx9XpD0K-bSWi9be0RQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2022_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_PWbhMQM71UGkkKLgVkOZYg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><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="Duration_1_1_2023_To_3_31_2023_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_t0C16WESXk2zbF3G31Itxg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_7_1_2023_To_9_30_2023_W_WVw8V8tUyv9jgci7uifw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2018_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tcmd_CorporateHeadQuarterSecondLeaseMember_oRe1amb7dkiTsF0XB0N5sA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tcmd:CorporateHeadQuarterSecondLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_10_31_2018_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tcmd_CorporateHeadQuarterInitialLeaseMember_xJJ6U3x0WEmAMwTINx8_-w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tcmd:CorporateHeadQuarterInitialLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-10-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_RestrictedStockUnitsRSUMember_M8bwANlicUyp4UMd2DYGnw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_Kt6hW1pnpkKs8upy3ghAyw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_RestrictedStockUnitsRSUMember_S_7Y6L1IfkK9ZbacgJL_UQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_PerformanceSharesMember_6HAJIqeyEUaiQToYtAfdMA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_t70kxCemN0GAg3UkgZAlEg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_RestrictedStockUnitsRSUMember_0fyztw3pZ0Ck4S5Rd4qPaQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_PerformanceSharesMember_KBZZhhs7H06AdsnOifKtWg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_MS_n4NomJ0y-fIQkng-UhA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_tcmd_EmployeeStockPurchasePlanMember_HFiQtM9gRESidV_6HnkPUQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">tcmd:EmployeeStockPurchasePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_RestrictedStockUnitsRSUMember___2iBiea5UW-ySNG9DDcaw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_PerformanceSharesMember_-DbZ9k1740Ca5jSHVP2-YA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_kgt3EaukG0mwoUflL2zEEA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_tcmd_EmployeeStockPurchasePlanMember_HbQNm2DRHkyAH6uTjVt-JQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">tcmd:EmployeeStockPurchasePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_iHQd9y1Ll0yZfYcvXClTQg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_ezS-WnceHUuULd2dRAw4SA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember_5JKHubjwBEGtATw8ASNgfg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember_-A12ocK6ikK5vZqQOstnMw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_J1sCCrsMH0u6FnGeMI5R4A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_cioTeAwoy0-99vBb2rKQAA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_S6WOGUauiEeQCq3MrtpmwQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_BZcJLooymkqAS-KE13NMYA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember_HxSjMzLYL0GA_jEuG3Mbgg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember_LDeEsngrN0i6IXD9s9CV5w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_lCzJt7RwjEm6bt9lS2nvZQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_aw1g2Ytc8EaMEXZk7bgvuQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_nV2lVbHNuEqPk3TL3gUltA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_c8suWCVS-0-8M1lSBp3YCg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember_2JSrBU8CTU-sbg86Nyn9iA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember_oNzNP8Z6IUK36Z0VublMuQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_InD_kSpVWkWpdxtCTAgllA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_0sXoNSfb4k6UBc9GSOK9dQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_s1Ty83wXCEi5WP97Hnx_9w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_ywsQSsjPeUWB7BS4q2DpMQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_VhaGiA5jGkam-INZUFv_Kw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_pGOubrJYkESRGzEtPzQ98A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember_6ILm2QWg9UOZzuoI3haAKA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember_Xt2SUTRSUkC214Je-lK66Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_PvP2spJEI0ixIMkN8EUjGQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_AkhuhltJoEODpOAbZcPGfw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_doHHH7OjnE2HPXOLgRoMBA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_yePD9bKHCUaPvuf6XLfkIA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_J0ghJoQKikuBySgdYFDRRw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ST13CInb-EmfSee4XYZJhQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_bK_LDr7y5EuAEmaMrb2C_g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ElL0pZQUckeSchyAIFmu2g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFourPsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_pgC2_vFXqU2rv8yUNSbAeg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentyFourPsuMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_CdHOtZoixEyQRv5ItF8tFw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentyFivePsuMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_2vjrEsRWU0O0frPl2AhISg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFourPsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_bj5dK8svok-fiQtw1nE6pQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentyFourPsuMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_CkRSapEG_EqdwTx_iFRKgA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentyFivePsuMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_wLPbRsXsKUqKBQpel7Wk9g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyThreePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_vf2apqJLn0annc2r067_Uw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentyThreePsuMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_J6J7Egu7BE6tb3ShfRSqDA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_ITvHrCpxsES9UiwjdoAA9A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_6OKFgrMhnE246Gi8WeLlgQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember__aEYDxJTI0upXEUGPGIthQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:LymphedemaProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_Z8PQOK9oAkioGS7j0udc7Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:AirwayClearanceProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember_04wqXpjY3kqN11nx4kIJ-Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:LymphedemaProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_rjm7WIevX0uwcdeheszyGw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:AirwayClearanceProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember__3il7B6sHkqLFAXwRoP1cA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:LymphedemaProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_PmBIY95pjkOcuNBj1xpXXw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:AirwayClearanceProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember_vmnWalIBSki-SkhrcDoGfg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:LymphedemaProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_x8zVkG3hqU-tUogzIiMkmg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:AirwayClearanceProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_q93ziSPyYkK8KDsTbE3dTA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">tcmd:VendorOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2023_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorTwoMember_Zk-3qdQ8LE-wnmIOQpdbDw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">tcmd:VendorTwoMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2023_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_NYbVUZ0gBEaUkVWcQUGNPQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">tcmd:VendorOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_5_24_2022_srt_LitigationCaseAxis_tcmd_WeaverLawsuitMember_oZZDdUJeUUKw3KK_HLckag"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:LitigationCaseAxis">tcmd:WeaverLawsuitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-05-24</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_9_8_2021_To_9_8_2021_9hihkujZ3Ey1eqaoAkIhQg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-09-08</xbrli:startDate><xbrli:endDate>2021-09-08</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_8_2_2016_To_8_2_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_IPOMember_PBovED4p10Ca25HCHdj3XQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:IPOMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2016-08-02</xbrli:startDate><xbrli:endDate>2016-08-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_7fujnUGjr0OaOiKI4BNzOQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_2_22_2022_To_2_22_2022_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_aOh09yICP0mKOlvyZ_LmxQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tcmd:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-02-22</xbrli:startDate><xbrli:endDate>2022-02-22</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_9_8_2021_Cj0wliWsa0a_TQenBtQr8Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-09-08</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_5_25_2023_To_5_25_2023_pzXlr5QgaUOGWFu4gYChbQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-05-25</xbrli:startDate><xbrli:endDate>2023-05-25</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2019_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tcmd_CorporateHeadQuarterThirdLeaseMember_609kXUWprkmsMz87p600EA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tcmd:CorporateHeadQuarterThirdLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2019_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tcmd_CorporateHeadQuarterSecondLeaseMember_vHpO4Pd9q0Gqf_jPdassSA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tcmd:CorporateHeadQuarterSecondLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_rC46QBunc0aHkmL3cYaEgw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="ecd:IndividualAxis">tcmd:WilliamW.BurkeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_QzV45OSiZEmFAc-892qXUw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="ecd:IndividualAxis">tcmd:KristieT.BurnsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pXRqFx4TIUi4vue3wwdTrQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="ecd:IndividualAxis">tcmd:ElaineM.BirkemeyerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_SZhqDQwQQkKluRcxCBVMnw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="ecd:IndividualAxis">tcmd:DanielL.ReuversMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_N-NgVtIWB0uz0iz8rSkamg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="ecd:IndividualAxis">tcmd:WilliamW.BurkeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_lIPhxvLYvEawCTUwfXvdhQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="ecd:IndividualAxis">tcmd:KristieT.BurnsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pYblZjnHZ0elVdb0CekXcQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="ecd:IndividualAxis">tcmd:ElaineM.BirkemeyerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_NAJ6PimfhkC86HlglviaIQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="ecd:IndividualAxis">tcmd:DanielL.ReuversMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_8_1_2024_kJQukOpKQ0S_h5VfAP5WOw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-08-01</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001027838</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:unit id="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:unit id="Unit_Standard_sqft_mTKkwbEw1UeRa9htF4TtgQ"><xbrli:measure>utr:sqft</xbrli:measure></xbrli:unit><xbrli:unit id="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:unit id="Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g"><xbrli:measure>tcmd:item</xbrli:measure></xbrli:unit><xbrli:unit id="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w"><xbrli:divide><xbrli:unitNumerator><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unitNumerator><xbrli:unitDenominator><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unitDenominator></xbrli:divide></xbrli:unit></ix:resources></ix:header></div><div style="max-width:100%;padding-left:4.47%;padding-right:4.47%;position:relative;"><div style="margin-top:21.6pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;min-height:11.5pt;"><a id="_43fc82a7_da8f_4d84_b056_105af1a8b5ec"></a><div style="margin-top:4pt;padding-top:1.0px;border-top:3.0pt solid #000000;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-top:1pt;text-align:center;background:#ffffff;border-top:1.0pt solid #000000;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:18pt;font-weight:bold;">UNITED STATES</b></p></div><p style="border-top-style:none;font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:0pt;padding-top:0pt;text-align:center;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:18pt;font-weight:bold;">SECURITIES AND EXCHANGE COMMISSION</b></p><p style="border-top-style:none;font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:6pt;padding-top:0pt;text-align:center;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Washington, D.C. 20549</b></p><p style="border-top-style:none;font-family:'Times New Roman','Times','serif';font-size:10pt;padding-top:0pt;text-align:center;background:#ffffff;margin:0pt;"></p><div style="border-top-style:none;font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;min-height:1.19em;padding-top:0pt;position:relative;width:100%;background:#ffffff;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:18.0%;border:none;margin:0 auto;"></div></div><p style="font-family:'Times New Roman','Times','serif';font-size:18pt;text-align:center;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">FORM&#160;</b><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:DocumentType" id="Narr_B1dE8qyfSUOa3naXC6zv2A"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">10-Q</b></ix:nonNumeric></p><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:6pt;margin-top:0pt;min-height:1.19em;position:relative;width:100%;background:#ffffff;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:18.0%;border:none;margin:0 auto;"></div></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:6pt;text-align:center;background:#ffffff;margin:0pt;"><ix:nonNumeric format="ixt-sec:boolballotbox" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:DocumentQuarterlyReport" id="Narr_C1c23Po3p0ezPocy1u7whw"><span style="font-family:'Segoe UI Symbol';">&#9745;</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;">    </span><b style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;">QUARTERLY REPORT PURSUANT TO SECTION&#160;13 OR 15(d)&#160;OF THE SECURITIES EXCHANGE ACT OF&#160;1934</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:6pt;text-align:center;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;">For the quarterly period ended: </span><ix:nonNumeric format="ixt:datemonthdayyearen" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:DocumentPeriodEndDate" id="Narr_5btpHk24C0-lbloZdyVCug"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;">June 30, 2024</span></ix:nonNumeric></p><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;padding-bottom:6pt;text-align:center;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">or</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:6pt;text-align:center;background:#ffffff;margin:0pt;"><ix:nonNumeric format="ixt-sec:boolballotbox" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:DocumentTransitionReport" id="Narr_P52nTUoOf0SxzKjLTEhHfw"><span style="font-family:'Segoe UI Symbol';font-size:9pt;">&#9744;</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;white-space:pre-wrap;">    </span><b style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;">TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;padding-bottom:6pt;text-align:center;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;">For the transition period from     to     </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;background:#ffffff;margin:0pt 0pt 3pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;">Commission File Number: </span><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:EntityFileNumber" id="Narr_8dQ7FuHf_UGZiO9fIoN38Q"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;">001-37799</b></ix:nonNumeric></p><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;margin-top:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:51.0%;border:none;margin:0 auto;"></div></div><p style="font-family:'Times New Roman','Times','serif';font-size:18pt;padding-bottom:3pt;text-align:center;background:#ffffff;margin:0pt;"><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:EntityRegistrantName" id="Narr_lcZ6k75vRUmG0kkEbI_wcw"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Tactile Systems Technology, Inc.</b></ix:nonNumeric></p><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(Exact name of registrant as specified in its charter)</span></p><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:6pt;margin-top:0pt;min-height:1.19em;position:relative;width:100%;background:#ffffff;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:51.0%;border:none;margin:0 auto;"><a id="_0b09d743_33da_4f22_9f6a_69c669372741"></a><a id="Tc_5p-dxS97KU6AWP72Mpk_BQ_1_1"></a><a id="Tc_SVQtKBkI2EKbKkAk_HljPw_2_0"></a><a id="Tc_ujrpXJrk0k6eKAuDntsPuQ_2_1"></a><a id="Tc_z_UncJKVDUmIXIF6_pRmnA_2_2"></a><a id="Tc_yiO9VIDvKUaXjzdIoAJzwA_3_1"></a><a id="Tc_ji99BnUzN0msFUthrqH8QA_5_1"></a><a id="Tc_RhgHn1wTTUqcFulRaap8nA_6_1"></a></div></div><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:98.16%;"><tr><td style="vertical-align:bottom;width:31.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;width:36.86%;margin:0pt;padding:0pt;"/><td style="vertical-align:bottom;width:31.56%;margin:0pt;padding:0pt;"/></tr><tr style="height:1pt;"><td style="vertical-align:bottom;width:31.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><ix:nonNumeric format="ixt-sec:stateprovnameen" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:EntityIncorporationStateCountryCode" id="Tc_WoFGZR7-oUaWHCDqr3_GZw_1_0"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;">Delaware</b></ix:nonNumeric></p></td><td style="vertical-align:top;width:36.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;background:#ffffff;margin:0pt;"><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:EntityAddressAddressLine1" id="Narr_kb3HVTvqJ0aUG7Da9IAfSA"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;">3701 Wayzata Blvd, Suite 300</b></ix:nonNumeric><b style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;width:31.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;background:#ffffff;margin:0pt;"><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:EntityTaxIdentificationNumber" id="Tc_WAQoc00f3UKZKBqQFZPQnQ_1_2"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;">41-1801204</b></ix:nonNumeric></p></td></tr><tr><td style="vertical-align:bottom;width:31.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(State or other jurisdiction of</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">incorporation or organization)</span></p></td><td style="vertical-align:top;width:36.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;background:#ffffff;margin:0pt;"><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:EntityAddressCityOrTown" id="Narr_iaL4LYrkeEit-XlUNXpFvg"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;">Minneapolis</b></ix:nonNumeric><b style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;">, </b><ix:nonNumeric format="ixt-sec:stateprovnameen" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:EntityAddressStateOrProvince" id="Narr_fSOj-_YSjUS7fP3ovwySJA"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;">Minnesota</b></ix:nonNumeric><b style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;"> </b><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:EntityAddressPostalZipCode" id="Narr_zcTeMSD3jUerheCIjRtLkg"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;">55416</b></ix:nonNumeric></p></td><td style="vertical-align:bottom;width:31.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(I.R.S. Employer</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Identification No.)</span></p></td></tr><tr><td style="vertical-align:bottom;width:31.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:36.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(Address and zip code of principal executive offices)</span></p></td><td style="vertical-align:bottom;width:31.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:31.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:36.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:31.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:31.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:36.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;background:#ffffff;margin:0pt 0pt 3pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;">(</b><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:CityAreaCode" id="Narr_6AcLVq35lEGYRLT4pqDeiA"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;">612</b></ix:nonNumeric><b style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;">) </b><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:LocalPhoneNumber" id="Narr_aAsQ9rtvcUO8ufrNE5jpLQ"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;">355-5100</b></ix:nonNumeric></p></td><td style="vertical-align:bottom;width:31.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:31.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:36.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(Registrant&#8217;s telephone number, including area code)</span></p></td><td style="vertical-align:bottom;width:31.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;padding-top:12pt;text-align:center;background:#ffffff;margin:0pt 0pt 6pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Securities registered pursuant to Section 12(b) of the Act:</b></p><a id="_91b1f836_8e21_4bde_bf6d_deb938e5b112"></a><a id="Tc_1D34YDPtY0CnXgUGBM7VHg_1_0"></a><a id="Tc_WZxts1bt3EGob85_u3JgTQ_1_1"></a><a id="Tc_A_w8BXY64k6Pcr7lDeyFiw_1_2"></a><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;width:98.84%;"><tr style="height:1pt;"><td style="vertical-align:top;width:38.4%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:top;width:21.23%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:top;width:40.35%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td></tr><tr><td style="vertical-align:top;width:38.4%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt 0pt 2.2pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Title of each class</b></p></td><td style="vertical-align:top;width:21.23%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt 0pt 2.2pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Trading Symbol(s)</b></p></td><td style="vertical-align:top;width:40.35%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt 0pt 2.2pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Name of each exchange on which registered</b></p></td></tr><tr><td style="vertical-align:top;width:38.4%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:Security12bTitle" id="Tc_v4XCc5KxNEqSFdEqgg1CiQ_2_0"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;">Common Stock, Par Value $0.001 Per Share</span></ix:nonNumeric></p></td><td style="vertical-align:top;width:21.23%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 2.2pt 0pt;"><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:TradingSymbol" id="Tc_c7HhzC5XJUWdrJl9iYzkZw_2_1"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;">TCMD</span></ix:nonNumeric></p></td><td style="vertical-align:top;width:40.35%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 2.2pt 0pt;"><ix:nonNumeric format="ixt-sec:exchnameen" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:SecurityExchangeName" id="Tc_G-rHspkd5UGr3QGcFqAk7w_2_2"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;">The Nasdaq Stock Market</span></ix:nonNumeric></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:6pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:6pt 0pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;">Indicate by check mark whether the registrant (1)&#160;has filed all reports required to be filed by Section&#160;13 or 15(d)&#160;of the Securities Exchange Act of 1934 during the preceding 12&#160;months (or for such shorter period that the registrant was required to file such reports), and (2)&#160;has been subject to such filing requirements for the past 90&#160;days. &#160;</span><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:EntityCurrentReportingStatus" id="Narr_hVXxzsCNuESqYdyazhE3nw"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;">Yes</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;"> </span><span style="font-family:'Times New Roman';font-size:9pt;">&#9745;</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;"> &#160;No </span><span style="font-family:'Times New Roman';font-size:9pt;">&#9723;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:6pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;">Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule&#160;405 of Regulation&#160;S-T (&#167;232.405 of this chapter) during the preceding 12&#160;months (or for such shorter period that the registrant was required to submit such files). &#160;</span><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:EntityInteractiveDataCurrent" id="Narr_-kFpg6XFi02fbJILIz3gwA"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;">Yes</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;"> </span><span style="font-family:'Times New Roman';font-size:9pt;">&#9745;</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;"> &#160;No </span><span style="font-family:'Times New Roman';font-size:9pt;">&#9723;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 6pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, smaller reporting company, or an emerging growth company. See the definitions of &#8220;large accelerated filer,&#8221; &#8220;accelerated filer,&#8221; &#8220;smaller reporting company,&#8221; and &#8220;emerging growth company&#8221; in Rule&#160;12b-2 of the Exchange Act.</span></p><a id="_ae5d43ca_844f_49a8_946a_491209a48b09"></a><a id="Tc_9BbYfI1aLk-UqDQxVb3Gpg_1_0"></a><a id="Tc_Xc_OFMwWr0610JCpeSDK6Q_1_1"></a><a id="Tc_wIz8ctYCEEusUHska3stPw_1_4"></a><a id="Tc_Yy2pim14aE6HEX178iYwZw_1_6"></a><a id="Tc_p5ZbYB2sZ0S1X0HxG9lO5Q_1_7"></a><a id="Tc_xGzjoi7ZuU-icXIX7q9tOQ_3_0"></a><a id="Tc_noY3iILsrUGfqtHeQ2Ly7A_3_3"></a><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:21.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:3.49%;margin:0pt;padding:0pt;"/><td style="vertical-align:bottom;width:12.57%;margin:0pt;padding:0pt;"/><td style="vertical-align:bottom;width:21.75%;margin:0pt;padding:0pt;"/><td style="vertical-align:bottom;width:2.4%;margin:0pt;padding:0pt;"/><td style="vertical-align:top;width:14.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:21.75%;margin:0pt;padding:0pt;"/><td style="vertical-align:bottom;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:middle;width:21.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Large&#160;accelerated&#160;filer</span></p></td><td style="vertical-align:middle;width:3.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;background:#ffffff;margin:0pt;"><span style="font-family:'Segoe UI Symbol';">&#9744;</span></p></td><td style="vertical-align:bottom;width:12.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;width:21.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><ix:nonNumeric format="ixt-sec:entityfilercategoryen" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:EntityFilerCategory" id="Tc_vdh4nfLgw0qtKjl-vwmN2Q_1_3"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;">Accelerated&#160;filer</span></ix:nonNumeric></p></td><td style="vertical-align:middle;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;background:#ffffff;margin:0pt;"><span style="font-family:'Times New Roman';">&#9745;</span></p></td><td style="vertical-align:top;width:14.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;width:21.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Non-accelerated&#160;filer&#160;</span></p></td><td style="vertical-align:middle;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;background:#ffffff;margin:0pt;"><span style="font-family:'Times New Roman';">&#9723;</span></p></td></tr><tr><td style="vertical-align:middle;width:21.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;width:3.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:12.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;width:21.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:14.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;width:21.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:middle;width:21.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Smaller&#160;reporting&#160;company&#160;</span></p></td><td style="vertical-align:middle;width:3.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><ix:nonNumeric format="ixt-sec:boolballotbox" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:EntitySmallBusiness" id="Tc_qR-snSwLCkyaMVPdvr-UNw_3_1"><span style="font-family:'Segoe UI Symbol';font-size:9pt;">&#9744;</span></ix:nonNumeric></p></td><td style="vertical-align:bottom;width:12.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;width:21.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Emerging growth company</span></p></td><td style="vertical-align:middle;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><ix:nonNumeric format="ixt-sec:boolballotbox" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:EntityEmergingGrowthCompany" id="Tc_BYpXgP5jD0aG-PmKuBIH5A_3_4"><span style="font-family:'Segoe UI Symbol';font-size:9pt;">&#9744;</span></ix:nonNumeric></p></td><td style="vertical-align:top;width:14.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;width:21.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;padding-bottom:6pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:6pt 0pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act. </span><span style="font-family:'Times New Roman';">&#9723;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 6pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;">Indicate by check mark whether the registrant is a shell company (as defined in Rule&#160;12b-2 of the Exchange Act). &#160;Yes </span><ix:nonNumeric format="ixt-sec:boolballotbox" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="dei:EntityShellCompany" id="Narr_rbt_qTecBkqXDJ4Gw8PiAQ"><span style="font-family:'Segoe UI Symbol';font-size:9pt;">&#9744;</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;"> &#160;No </span><span style="font-family:'Times New Roman';font-size:9pt;">&#9745;</span></p><div style="padding-bottom:1.0px;border-bottom:3.0pt solid #000000;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;padding-bottom:1pt;text-align:center;background:#ffffff;border-bottom:1.0pt solid #000000;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" format="ixt:numdotdecimal" scale="0" contextRef="As_Of_8_1_2024_kJQukOpKQ0S_h5VfAP5WOw" decimals="INF" name="dei:EntityCommonStockSharesOutstanding" id="Narr_TVOFncAHQki7chAHTs9d1w">23,966,748</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares of common stock, par value $0.001 per share, were outstanding as of August 1, 2024.</span></p></div><p style="display:none;font-family:'Times New Roman','Times','serif';line-height:0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:91.06%;border:0;margin:30pt 4.47% 30pt 4.47%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_fcf3773b_398a_47f6_b68f_5bd95438905e"></a><a id="TOC"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">TABLE OF CONTENTS</b></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:7.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:top;width:82.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:top;white-space:nowrap;width:4.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:7.67%;margin:0pt;padding:0pt;"/><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">  </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:82.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#PARTIFINANCIALINFORMATION_933021"><b style="font-style:normal;font-weight:bold;">PART&#160;I&#8212;FINANCIAL&#160;INFORMATION</b></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">  </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:4.97%;margin:0pt;padding:0pt;"/></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:7.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:82.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:4.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:7.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item1FinancialStatements"><span style="font-style:normal;font-weight:normal;">Item&#160;1.</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:82.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item1FinancialStatements"><span style="font-style:normal;font-weight:normal;">Financial Statements</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:4.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">4</span></p></td></tr><tr><td style="vertical-align:top;width:7.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item2ManagementsDiscussionandAnalysis_13"><span style="font-style:normal;font-weight:normal;">Item&#160;2.</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:82.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item2ManagementsDiscussionandAnalysis_13"><span style="font-style:normal;font-weight:normal;">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:4.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">23</span></p></td></tr><tr><td style="vertical-align:top;width:7.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item3QuantitativeandQualitativeDisclosur"><span style="font-style:normal;font-weight:normal;">Item&#160;3.</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:82.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item3QuantitativeandQualitativeDisclosur"><span style="font-style:normal;font-weight:normal;">Quantitative and Qualitative Disclosures About Market Risk</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:4.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">32</span></p></td></tr><tr><td style="vertical-align:top;width:7.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item4ControlsandProcedures_119285"><span style="font-style:normal;font-weight:normal;">Item&#160;4.</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:82.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item4ControlsandProcedures_119285"><span style="font-style:normal;font-weight:normal;">Controls and Procedures</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:4.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">32</span></p></td></tr><tr><td style="vertical-align:top;width:7.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:6pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:82.28%;margin:0pt;padding:0pt;"/><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:4.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:7.67%;margin:0pt;padding:0pt;"/><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:82.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#PARTIIOTHERINFORMATION_513372"><b style="font-style:normal;font-weight:bold;">PART&#160;II&#8212;OTHER INFORMATION</b></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:4.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:7.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:6pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:82.28%;margin:0pt;padding:0pt;"/><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:4.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:7.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item1LegalProceedings_81141"><span style="font-style:normal;font-weight:normal;">Item&#160;1.</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:82.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item1LegalProceedings_81141"><span style="font-style:normal;font-weight:normal;">Legal Proceedings</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:4.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">33</span></p></td></tr><tr><td style="vertical-align:top;width:7.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item1ARiskFactors_664913"><span style="font-style:normal;font-weight:normal;">Item&#160;1A.</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:82.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item1ARiskFactors_664913"><span style="font-style:normal;font-weight:normal;">Risk Factors</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:4.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">33</span></p></td></tr><tr><td style="vertical-align:top;width:7.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item2UnregisteredSalesofEquitySecurities"><span style="font-style:normal;font-weight:normal;">Item&#160;2.</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:82.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item2UnregisteredSalesofEquitySecurities"><span style="font-style:normal;font-weight:normal;">Unregistered Sales of Equity Securities and Use of Proceeds</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:4.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">33</span></p></td></tr><tr><td style="vertical-align:top;width:7.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item3DefaultsUponSeniorSecurities_780159"><span style="font-style:normal;font-weight:normal;">Item&#160;3.</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:82.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item3DefaultsUponSeniorSecurities_780159"><span style="font-style:normal;font-weight:normal;">Defaults Upon Senior Securities</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:4.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">33</span></p></td></tr><tr><td style="vertical-align:top;width:7.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item4MineSafetyDisclosures_923755"><span style="font-style:normal;font-weight:normal;">Item&#160;4.</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:82.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item4MineSafetyDisclosures_923755"><span style="font-style:normal;font-weight:normal;">Mine Safety Disclosures</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:4.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">33</span></p></td></tr><tr><td style="vertical-align:top;width:7.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item5OtherInformation_507706"><span style="font-style:normal;font-weight:normal;">Item 5.</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:82.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item5OtherInformation_507706"><span style="font-style:normal;font-weight:normal;">Other Information</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:4.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">33</span></p></td></tr><tr><td style="vertical-align:top;width:7.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item6Exhibits_177499"><span style="font-style:normal;font-weight:normal;">Item&#160;6.</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';text-decoration-line:none;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:82.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><a style="font-family:'Arial','Helvetica','sans-serif';" href="#Item6Exhibits_177499"><span style="font-style:normal;font-weight:normal;">Exhibits</span></a></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:4.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">34</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;background:#ffffff;margin:14pt 0pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:14pt 0pt 0pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_39e6e8ef_ff63_42f2_b380_b8f0bda47722"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Forward-Looking Information</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 10pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">All statements, other than statements of historical facts, contained in this Quarterly Report on Form 10-Q, including statements regarding our business, operations and financial performance and condition, as well as our plans, objectives and expectations for our business, operations and financial performance and condition, are forward-looking statements. In some cases, you can identify forward-looking statements by the following words: "anticipate," "believe," "continue," "could," "estimate," "expect," "intend," "may," "might," "ongoing," "plan," "potential," "predict," "project," "should," "target," "will," "would," or the negative of these terms or other comparable terminology, although not all forward-looking statements contain these words. Forward-looking statements involve known and unknown risks, uncertainties and other factors that may cause our results, levels of activity, performance or achievements to be materially different from the information expressed or implied by the forward-looking statements in this Quarterly Report on Form 10-Q. These risks, uncertainties and other factors include, but are not limited to:</span></p><a id="_Hlk163809547"></a><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 8pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 8pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">our ability to obtain reimbursement from third-party payers for our products; </span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 8pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 8pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">the impact of inflation, rising interest rates or recession;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 8pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 8pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">the adequacy of our liquidity to pursue our business objectives; </span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 8pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 8pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">adverse economic conditions or intense competition; </span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 8pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 8pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">price increases for supplies and components;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 8pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 8pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">wage and component price inflation; </span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 8pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 8pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">loss of a key supplier; </span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 8pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 8pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">entry of new competitors and products; </span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 8pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 8pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">compliance with and changes in federal, state and local government regulation;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 8pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 8pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">loss or retirement of key executives, including transition matters related to our recent Chief Executive Officer change;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 8pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 8pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">technological obsolescence of our products; </span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 8pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 8pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">technical problems with our research and products; </span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 8pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 8pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">our ability to expand our business through strategic acquisitions; </span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 8pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 8pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">our ability to integrate acquisitions and related businesses; </span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 8pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 8pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">the effects of current and future U.S. and foreign trade policy and tariff actions; and</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">the inability to carry out research, development and commercialization plans.</span></td></tr></table><div style="margin-top:10pt;"></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">You should read the matters described in "Risk Factors" and the other cautionary statements made in our Annual Report on Form 10-K for the year ended December 31, 2023, and in subsequent Quarterly Reports on Form 10-Q. We cannot assure you that the forward-looking statements in this report will prove to be accurate and therefore you are encouraged not to place undue reliance on forward-looking statements. Actual results or events could differ materially from the plans, intentions and expectations disclosed in the forward-looking statements we make. You are urged to carefully review and consider the various disclosures made by us in this report and in other filings with the Securities and Exchange Commission (the &#8220;SEC&#8221;) that advise of the risks and factors that may affect our business. Other than as required by law, we undertake no obligation to update or revise these forward-looking statements, whether as a result of new information, future events or otherwise. Our forward-looking statements do not reflect the potential impact of any future acquisitions, mergers, dispositions, joint ventures or investments that we may make.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">3</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_e661a788_fd93_4ea1_93c7_e209a3f90ee1"></a><a id="PARTIFINANCIALINFORMATION_933021"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">PART&#160;I&#8212;FINANCIAL INFORMATION</b></p><a id="Item1FinancialStatements"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Item 1. Financial Statements</b></p><a id="_be5fa61a_9cdb_4c0f_832c_2bb4b79cd175"></a><a id="Tc_Lq2u0WaTpEmkQW_Aem_eSg_1_0"></a><a id="Tc__hbU3Y7m0E6a2GxTrxZ9kA_2_0"></a><a id="Tc_WDhgWS6ERUiEfU0nDwRWXw_3_0"></a><a id="Tc_OETKUZezREC9_HgA-2XMuQ_4_2"></a><a id="Tc_i8XKBPBL-UiOp7VcOaBdEQ_4_5"></a><a id="Tc_fJ1Gw7RNq0SrUhe1cXAihw_5_0"></a><a id="Tc_iEN3HPhZ9k-Y8LztTuwiyw_5_2"></a><a id="Tc_BlDMaXm2eUOWperug0mZTQ_5_5"></a><a id="Tc_odj5R8V73ki9iJcyaLqIFA_6_0"></a><a id="Tc_gTqYdPJ9CE6PBHzsKYBZ4A_7_0"></a><a id="Tc_Cl_wlx85F0aYr7SkKwfR7A_8_0"></a><a id="Tc_g2cVDV3dB0O-AGPBvtANDQ_8_2"></a><a id="Tc_VQGrmuV3-UGyn_1Sv95f_Q_8_5"></a><a id="Tc_Rx9Xjvp2F0KMd8YQui2JVw_9_0"></a><a id="Tc_j3X131_qCU6TnawD9sEHuQ_10_0"></a><a id="Tc_Ewg73Civ6UiAOccqXh0zRQ_11_0"></a><a id="Tc_F9jUB9TZjk6Nbs3u6Od8Uw_12_0"></a><a id="Tc_kWxZu7cHNUmhgtOL4oIQqg_13_0"></a><a id="Tc_Bxxk6kJxREaJe31mc2b7rw_14_0"></a><a id="Tc_8GXcxtuTHUCzpHY6JWfbSw_15_0"></a><a id="Tc_6GM-iFvTLUGbWPgQtwrZWQ_16_0"></a><a id="Tc_C67ZBlqc20S-8kCdf7M_Gg_17_0"></a><a id="Tc_VDbOUIDXlEORB1oDugjYzw_18_0"></a><a id="Tc_MjxchHMsWEOB-CLH7u72lg_19_0"></a><a id="Tc_eH1M1L592EGw3a3H133mtQ_20_0"></a><a id="Tc_eE49R4CJukS4m5fFnFBq9Q_21_0"></a><a id="Tc_XmZ1S2UA6UOKYrgXNMAVZg_22_0"></a><a id="Tc_1wPP_WPYLkaD8Je_12vKCQ_23_0"></a><a id="Tc_e5AwBs-vYk-0e_7NklWQdg_23_2"></a><a id="Tc_GwvL38KFk0mwntyly8lSzg_23_5"></a><a id="Tc_ucBbagR4BkWWvbILS-atLw_24_0"></a><a id="Tc_C5Njtp92Eki-O6MESdtCUA_25_0"></a><a id="Tc_0b1C2R6RREm5tjsWTcDNFQ_26_0"></a><a id="Tc_V0Tqqtz_bEqQEuOMT3wNCQ_26_2"></a><a id="Tc_jJQ7niOvmk6Ju11wi3at5A_26_5"></a><a id="Tc_5KGEyYxubkGuLcv8S2Cpqw_27_0"></a><a id="Tc_MI5dQoGsok-TcirSIIcsWA_28_0"></a><a id="Tc_PL0d534SWE24USd6Nv5HeA_29_0"></a><a id="Tc_XgiiSl6JNEGbcn05wjvdQQ_30_0"></a><a id="Tc_e-T2meP9AE64J_hZuxMG9Q_31_0"></a><a id="Tc_273BhLQLlEejhQvPtScrGw_32_0"></a><a id="Tc_s7zBOe1aj0iWnKkFZ95B1g_33_0"></a><a id="Tc_F0po-496X0ee89pEfRrHUQ_34_0"></a><a id="Tc_T3GMOxUWtkOfQoLzNceS7w_35_0"></a><a id="Tc_cZr8UsR5Q0KD4WhmsBIqTQ_36_0"></a><a id="Tc_-atS2sOa102Zue7zQLGqGg_37_0"></a><a id="Tc_hab3qXQ9_Eub8PCQPZhUxA_38_0"></a><a id="Tc_upcC-1Diekay4WsDjvj41w_39_0"></a><a id="Tc_zmQFAUo5XkCIo_y5cpNtfQ_40_0"></a><a id="Tc_3D9xTdvuMEq6ctqxXWR0_A_42_0"></a><a id="Tc_umrV_3mASUmkWKcAXec8GQ_44_0"></a><a id="Tc_gtW30XnW00Ow6sYqrxJMjA_45_0"></a><a id="_b52d5e01_cea5_45ed_96ce_5be7f0e8ab8a"></a><a id="_b52d5e01_cea5_45ed_96ce_5be7f0e8ab8a_2"></a><a id="_b52d5e01_cea5_45ed_96ce_5be7f0e8ab8a_3"></a><a id="Tc_j0jucEdNgUaBhZ9nAx_8jw_46_0"></a><a id="Tc_sFkBx1XYjkeQZAKg3m2Irw_47_0"></a><a id="Tc_t952VfGKGkCnIsTwbwbFoQ_48_0"></a><a id="Tc_a2K332m6PkSoMoGL1nFoDw_49_0"></a><a id="Tc_PHuVUGOcgUaewQ_2TJWjCw_50_0"></a><a id="Tc_Yfdqevgd8Uq19rLBHTgEHQ_50_2"></a><a id="Tc_77MIQTm2kUyFi-ggH95uhg_50_5"></a><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td colspan="7" style="vertical-align:bottom;width:100%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">Tactile Systems Technology, Inc.</b></p></td></tr><tr><td colspan="7" style="vertical-align:bottom;width:100%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">Condensed Consolidated Balance Sheets</b></p></td></tr><tr><td colspan="7" style="vertical-align:bottom;white-space:nowrap;width:100%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">(Unaudited)</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">December 31,</b></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">(In&#160;thousands,&#160;except share and per share data)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-style:italic;font-weight:bold;">Assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-style:italic;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">Current assets</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Cash and cash equivalents</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3" id="Tc_Ftgq93FxLkqQxohEYVQwXg_8_3">73,618</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3" id="Tc_ingrivZpCE-61YREGN0qLg_8_6">61,033</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Accounts receivable</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="3" id="Tc_T8VQnb-vqESPuwRNIb0vdg_9_3">41,935</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="3" id="Tc_yvlXnSaGCEaH6rOlU6SSMQ_9_6">43,173</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Net investment in leases</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetInvestmentInLease" scale="3" id="Tc_VTkmIA_Y_EW_yuMMPiJcYA_10_3">13,551</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetInvestmentInLease" scale="3" id="Tc_gUYIcPzr3k6Gqzd3LacF3Q_10_6">14,195</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Inventories</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryNet" scale="3" id="Tc_Uwt-vyl4IUeAHdvo1VAn6Q_11_3">18,846</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryNet" scale="3" id="Tc_aWMlAYjwZkmLiROAvsIqJg_11_6">22,527</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Prepaid expenses and other current assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="3" id="Tc_gG6mIc1Py0qFVXtOREfTZg_12_3">3,909</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="3" id="Tc_ObaCuWAzbUukGxukviP8iw_12_6">4,366</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 24pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Total current assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AssetsCurrent" scale="3" id="Tc_cMu56DkEuUeRhWf7Q098DA_13_3">151,859</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AssetsCurrent" scale="3" id="Tc_OBF9MKmP1UGmPtw2j5LCyg_13_6">145,294</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">Non-current assets</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Property and equipment, net</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="Tc_ddXPOOm7IEKFgf8Lr3DumA_15_3">5,691</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="Tc_9FzJ1ocBb06iHNlLQ9K2lw_15_6">6,195</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Right of use operating lease assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="Tc_Lu6pKFkKUUSYHGkKEt6D6Q_16_3">17,828</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="Tc_xZRJ0PJCP0-xXDqrJVD15w_16_6">19,128</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Intangible assets, net</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="3" id="Tc_OffEFpvJk0mMoYNGTPlbsA_17_3">44,883</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="3" id="Tc_kL_pW2XqwEGAJBmKNBknxw_17_6">46,724</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Goodwill</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="Tc_00T1hLCLn0aXgY-Ua6W1OQ_18_3">31,063</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="Tc_BVLAyjY2C0S6jA77lDp_tw_18_6">31,063</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Accounts receivable, non-current</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="tcmd:MedicareAccountsReceivableNonCurrent" scale="3" id="Tc_HfqEjG41q0W4qcHld16bGg_19_3">4,511</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="tcmd:MedicareAccountsReceivableNonCurrent" scale="3" id="Tc_Ou-QDX6ic0iIn39avQ-5eQ_19_6">10,936</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Deferred income taxes</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxAssetsNet" scale="3" id="Tc_nBnoF5-V1kaKj2-NYQpagg_20_3">19,408</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxAssetsNet" scale="3" id="Tc_tt5CfVr6HEy-p3sBdTOreQ_20_6">19,378</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Other non-current assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherAssetsNoncurrent" scale="3" id="Tc_3prEOwWmFkGqmxO8qu-v8g_21_3">3,541</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherAssetsNoncurrent" scale="3" id="Tc_4rkSqzla40SBiOacjr0afQ_21_6">2,720</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 24pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Total non-current assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AssetsNoncurrent" scale="3" id="Tc_n9I2BF1k3UiHjInYempY5w_22_3">126,925</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AssetsNoncurrent" scale="3" id="Tc_XzeS-sjOJECbm3RhZhLwfQ_22_6">136,144</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 36pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">Total assets</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="Tc_qlsMqprsqE2cErcu2yq3dw_23_3">278,784</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="Tc_6Jm-ShNhT0StC8XwgPwVXw_23_6">281,438</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-style:italic;font-weight:bold;">Liabilities and Stockholders' Equity</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">Current liabilities</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Accounts payable</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsPayableCurrent" scale="3" id="Tc_pM5v4Cmq8kmx_VVOUUZoAw_26_3">5,094</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsPayableCurrent" scale="3" id="Tc_JD7334Ktp06jVZsa2bPppw_26_6">6,659</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Note payable</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NotesPayableCurrent" scale="3" id="Tc_K4g0q6MPTkiyDNseZIzzfw_27_3">2,956</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NotesPayableCurrent" scale="3" id="Tc_dNRIXg3Lq0CXIOrlzt3MXg_27_6">2,956</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Accrued payroll and related taxes</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" scale="3" id="Tc_m3WgMmuSrUmR4lpCQoMvVQ_28_3">12,090</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" scale="3" id="Tc_HvVP7v9SlU2XOImq3lzcXA_28_6">16,789</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Accrued expenses</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedLiabilitiesCurrent" scale="3" id="Tc_JecPKzzdS0er0vulD6viYA_29_3">6,702</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedLiabilitiesCurrent" scale="3" id="Tc_JSAR_IkcSUi0f_q-dcrQrg_29_6">5,904</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Income taxes payable</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedIncomeTaxesCurrent" scale="3" id="Tc_cy-Rhk_eP0CzCx5XFvuL_g_30_3">496</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedIncomeTaxesCurrent" scale="3" id="Tc_MvO8-6mU5kqGIVVZl2XoOQ_30_6">1,467</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Operating lease liabilities</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="Tc_3dBtGjULLUGeWAMP-iXgOA_31_3">2,799</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="Tc_-pP1_JPokkSpz6iyQzMZhQ_31_6">2,807</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Other current liabilities</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherLiabilitiesCurrent" scale="3" id="Tc_6_CaSoo8eEiZt6wqf_-XwQ_32_3">4,075</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherLiabilitiesCurrent" scale="3" id="Tc_Qv-M3rWnvky9i-BELXvqbQ_32_6">4,475</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 24pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Total current liabilities</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesCurrent" scale="3" id="Tc_8yObapxsbUuiU5j7PNZYvA_33_3">34,212</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesCurrent" scale="3" id="Tc_XRlgI0Jt-k-Z0HCslLSjCg_33_6">41,057</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">Non-current liabilities</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Note payable, non-current</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LongTermNotesPayable" scale="3" id="Tc_YsTD6Z1C_EOjNRJBIRT6_A_35_3">24,698</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LongTermNotesPayable" scale="3" id="Tc_4x6eOmkumkSnFtJ7bBYoxg_35_6">26,176</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Accrued warranty reserve, non-current</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrualNoncurrent" scale="3" id="Tc_V8yfmo1ipE6Hm22bFZLKHg_36_3">1,561</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrualNoncurrent" scale="3" id="Tc_Wmz90WLXKEKMZ4W6OAfbxQ_36_6">1,681</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Income taxes payable, non-current</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedIncomeTaxesNoncurrent" scale="3" id="Tc_kYH5TDTFEEyiC6RBaKOXtg_37_3">495</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedIncomeTaxesNoncurrent" scale="3" id="Tc_Hw7IUzD7uUWTadamSzJSKw_37_6">446</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Operating lease liabilities, non-current</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3" id="Tc_BJa2JBXDYkWzkMCPZ1zFdw_38_3">17,142</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3" id="Tc_SX9CPzsfMU-aa8lHnfliAQ_38_6">18,436</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 24pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Total non-current liabilities</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesNoncurrent" scale="3" id="Tc_ZzfU5cwNN02Thz86HUA8fA_39_3">43,896</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesNoncurrent" scale="3" id="Tc_Rjx6U43BTEmL4ZSrFAR-Pg_39_6">46,739</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 36pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">Total liabilities</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Liabilities" scale="3" id="Tc_BEbX5qv2Jk2hvMU5Vln9tg_40_3">78,108</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Liabilities" scale="3" id="Tc_pK5y-_xj1EKrLFU1OG7ckg_40_6">87,796</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 36pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;margin-left:0pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">Commitments and Contingencies</b><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> (see Note 9)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">Stockholders&#8217; equity:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Preferred stock, </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">$<ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="Narr_BgbOYoOW3UCK9QrAdkFTdA"><ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="Narr_eepzL2Rgf0OZ79CwtI9aGQ">0.001</ix:nonFraction></ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> par value, </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesAuthorized" scale="0" id="Narr_NSqCgCFgLU6OpN4ycRS8cg"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesAuthorized" scale="0" id="Narr_Y1pKcAx31kKP8UW8CLjVHw">50,000,000</ix:nonFraction></ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> shares authorized; </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:PreferredStockSharesIssued" scale="0" id="Narr_LpQhmSSUMU2bk_rcpG-vXQ"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:PreferredStockSharesIssued" scale="0" id="Narr_h-MS89sv_0GuWkIaA8zHQA">none</ix:nonFraction></ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> issued and </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">outstanding</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> as of June 30, 2024 and December 31, 2023</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="-sec-ix-hidden:Hidden_aplkBkQSjE6hOyG_iywKuA;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-style:normal;font-weight:normal;"> &#8212;</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="-sec-ix-hidden:Hidden_jfSUXHxoIU2YHiwi68NfPA;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-style:normal;font-weight:normal;"> &#8212;</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Common stock, </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">$<ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="Narr_jnmFkBptV0aiMHA40XpvPg"><ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="Narr_WVsotaZ8TEemkpWYBxY1jg">0.001</ix:nonFraction></ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> par value, </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" id="Narr_b8yXgdCin0uU58t3UELD9A"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" id="Narr_-qaVEPIeQUmHxnLEQ8AsVQ">300,000,000</ix:nonFraction></ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> shares authorized; </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesIssued" scale="0" id="Narr_cP1caNQU0U-6qFQa9H9CFw">23,966,748</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> shares issued and </span><span style="-sec-ix-hidden:Hidden_mygmtbyp6kOUizjoS0rnGg;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-style:normal;font-weight:normal;">outstanding</span></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> as of June 30, 2024; </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesIssued" scale="0" id="Narr_jBB84j8MGku1TJLWY3jYwg">23,600,584</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> shares issued and </span><span style="-sec-ix-hidden:Hidden_hzJ1TJJS7kexjZS7x06gvw;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-style:normal;font-weight:normal;">outstanding</span></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> as of December 31, 2023</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CommonStockValue" scale="3" id="Tc_S4UY-DTSc0-QncIoMMzrew_46_3">24</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CommonStockValue" scale="3" id="Tc_jC_eLkYwS0yYxTXh827UQg_46_6">24</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Additional paid-in capital</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdditionalPaidInCapital" scale="3" id="Tc_8AVPAT6btkCSXkj44E0QNQ_47_3">179,669</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdditionalPaidInCapital" scale="3" id="Tc_CAeIeWeZKkyofpmfhevW7w_47_6">174,724</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">Retained earnings</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="3" id="Tc_Us-4aIm3VkymtUVogmf52Q_48_3">20,983</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="3" id="Tc_Y-Rk1RmMl0Wx8zctfldp1Q_48_6">18,894</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 24pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">Total stockholders&#8217; equity</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_m-1cG8uroEiojdJ0nW9hAg_49_3">200,676</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_nc9NNVZWlUmV1_Au6UlJig_49_6">193,642</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 36pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;font-weight:bold;">Total liabilities and stockholders&#8217; equity</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="3" id="Tc_unJDc2udiUKuk1PE6epFMA_50_3">278,784</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.81%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8.5pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="3" id="Tc_fbZYpi-9QUKomwPto9U9VA_50_6">281,438</ix:nonFraction></span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The accompanying notes are an integral part of these unaudited condensed consolidated financial statements.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">4</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_0617bf0b_d65a_4a81_b07d_742615570a77"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;visibility:hidden;">&#8203;</span></p><a id="_cf714e49_d184_4032_b652_2e45a663f6b6"></a><a id="Tc_FsrkzW4xOU2KvQbyYqx_Ww_1_0"></a><a id="Tc_KyItm-2Ee0yuSedFmLlwkw_2_0"></a><a id="Tc_KEwh37HRJEasYl0pq15AFw_3_0"></a><a id="Tc__EtKY3majU2CYrdI9vDvCw_6_2"></a><a id="Tc_F7Db80Hm-Ueqsh6RvogSgA_6_8"></a><a id="Tc_ntj4JaWjhkWZ8ZTXeF5Mxg_7_2"></a><a id="Tc_oNXBecm0Jk6s-1ZQJzHtDw_7_8"></a><a id="Tc_IdUVUW96MEG4kUYhhMLNTQ_8_0"></a><a id="Tc_ykjpaasBNE-2BgW_3fDoSQ_8_2"></a><a id="Tc_iQe2Ul9vVkerH-03TXJDMg_8_5"></a><a id="Tc_qwn3LKcKEkCXeVrVPNF8vA_8_8"></a><a id="Tc_bMYhtQSUl0ij0n7zBvtC0w_8_11"></a><a id="Tc__kxUnBZofk-XuIuH8s6L2Q_9_0"></a><a id="Tc_oEi1DiGMYkGYRrZZN9nfig_10_0"></a><a id="Tc_6Szus3ZPikiDhaK-rdo_Lw_10_2"></a><a id="Tc_tLXiViLinE2PCKlCAl7jZA_10_5"></a><a id="Tc_m8S9uAr7dkuagUunezGXGw_10_8"></a><a id="Tc_1DBBrEwTYkOCy6toUlfJhQ_10_11"></a><a id="Tc_ufv1YD_QEUqAUsnDYLp8tQ_11_0"></a><a id="Tc_uU9fHbBxQUarOBLVAqe_GA_12_0"></a><a id="Tc_zcL8-bo_6EOfBh2lGw8M3A_13_0"></a><a id="Tc_3e6AOaabQ0CgZiMb1XFJmg_14_0"></a><a id="Tc_BbLJH1-jaEirZgsKo6qq9g_15_0"></a><a id="Tc_ymakLoKUSUe0MMpQcTagYA_16_0"></a><a id="Tc_VgIEQZ5QYUKMlaBFZKz2Rg_17_0"></a><a id="Tc_vv9zuKfnsE-357aGAmDvIg_18_0"></a><a id="Tc__khMtyu98UmTxK-Jyk-Ujg_19_0"></a><a id="Tc_XCOQrfSwQUqadfwb0vXomg_20_0"></a><a id="Tc_rPrsihYIFkaOKk6NmQerKA_21_0"></a><a id="Tc_S7DwezIsz0uJAlVWy6iLLQ_22_0"></a><a id="Tc_wpE74uwPwkuLIiPkI2b_IQ_23_0"></a><a id="Tc_CiyWxMUhWUmIhBSm6VAAXQ_24_0"></a><a id="Tc_80Ae4JUNnUakKZGoCWBB5A_25_0"></a><a id="Tc_6mNBbVRqc0O2v0XJqvxNgQ_26_0"></a><a id="Tc_Npmr7MCjtU61s_SZHiGo7A_27_0"></a><a id="Tc_BHOOCZACvkatQ35A49HX0w_28_0"></a><a id="Tc_RL8YH6U0-0S3DgoWauZLsQ_29_0"></a><a id="Tc_pPw5OJQ2Fk-mCLEnle3Y4g_30_0"></a><a id="Tc_yOfJEeM86kKvUQGB4mPrUw_31_0"></a><a id="Tc_xcDoKPgUBkyR0oCY1RlwEA_31_2"></a><a id="Tc_mt8oTt_-C0icL65G5TPsCg_31_5"></a><a id="Tc_V3XJJjoYJk2PdACEALqIzQ_31_8"></a><a id="Tc_NHEPw3vtWE6VvcLYIzwfLg_31_11"></a><a id="Tc_dZTeIZ57IEqSi1oZz7cLiw_32_0"></a><a id="Tc_ZG3h_2Z60UqL7WiEb7Nt2w_33_0"></a><a id="Tc_rYrLgNhRiU-p2gOJotmz7g_33_2"></a><a id="Tc__MIACoqs_U2jumtO1wEtmA_33_5"></a><a id="Tc_V092qh15SEyM3zUc5op5IA_33_8"></a><a id="Tc_sI99m5rMEECRgj_Ip81-Lg_33_11"></a><a id="Tc_zIvvyuBq30uOsFr5HJYa7w_34_0"></a><a id="Tc_XFut0F2GUEe4U5QjM_WqZg_34_2"></a><a id="Tc_IgxlfalMqU6zD1xOKiQrpg_34_5"></a><a id="Tc_2QvTNyoMokKUOY-QFa2wpg_34_8"></a><a id="Tc_YdAcXjLcZkONB3ODP1UeGw_34_11"></a><a id="Tc_cxmG4qfEeUCyBL2vpMQCYA_35_0"></a><a id="Tc_-8S4kh-K40OMtTsmpMb3Hg_36_0"></a><a id="Tc_S1hhlS1NeUG1XKMNuPi2qA_37_0"></a><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:42.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:100%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Tactile Systems Technology, Inc.</b></p></td></tr><tr><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:100%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Condensed Consolidated Statements of Operations</b></p></td></tr><tr><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:100%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(Unaudited)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td colspan="6" style="vertical-align:bottom;white-space:nowrap;width:28.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended </b></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="6" style="vertical-align:bottom;white-space:nowrap;width:28.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands,&#160;except&#160;share and per share data)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_us-gaap_ProductMember_4y30Rvu4XkSp7uSHLJeLFQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_VNrZAZcdZkK06NPcQ4rWhQ_10_3">64,267</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_HwKD6hwGZ0equ26Z4poEYQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_10-Dphfb9UiFle1168TP4A_10_6">59,802</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_us-gaap_ProductMember_QSwcFcYa7UqLcB0gfKdhuQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_8NYu98mI0ki3RmW_Hy4vpg_10_9">117,574</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_BupDevr4vEaRIVahiBu9bA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_hdTXJLW88Eq5f9G0X5Afzw_10_12">112,593</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Rental revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_ILVH-vKmt0WIR5ZPg5Cc6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_G2yuzlK5Lk-7LYJhoPFjhQ_11_3">8,951</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember__lHk1zY_ZkiZZP9bct_GxQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_cBtMrjNmU0GhkrN3MwJW5g_11_6">8,537</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_XVztWUeXuUaHYxz6GEAC-A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_T4Z2E1iQ1k-MrKIDUW-iFA_11_9">16,732</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_YVbT8PtiBUW0Qj_8Fj5ITw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_zzsECE_x_EaHTikOKK_C_A_11_12">14,592</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_CVRgZLhoN0aRO1jHj4kh9Q_12_3">73,218</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_ji7dJB39z0OUZh3geTqqXQ_12_6">68,339</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_JGia4FpfT0ufSNGp87Od-A_12_9">134,306</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_J3EYgVHluU6apRmw51Ldlg_12_12">127,185</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Cost of revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cost of sales revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_us-gaap_ProductMember_4y30Rvu4XkSp7uSHLJeLFQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="3" id="Tc_BB4ABCFf1kumiAeFQoZnlQ_14_3">16,263</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_HwKD6hwGZ0equ26Z4poEYQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="3" id="Tc_g16-m0l4akOE3LDjKjq-qQ_14_6">16,865</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_us-gaap_ProductMember_QSwcFcYa7UqLcB0gfKdhuQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="3" id="Tc_T4UP2hk0I0iNMteeL9Avtw_14_9">31,207</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_BupDevr4vEaRIVahiBu9bA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="3" id="Tc_TG44S5cF1kGeHxtjl12xJw_14_12">31,507</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cost of rental revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_ILVH-vKmt0WIR5ZPg5Cc6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="3" id="Tc_9oBrJCKw0ESXaeJcJBQQWQ_15_3">2,852</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember__lHk1zY_ZkiZZP9bct_GxQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="3" id="Tc_q97Ril7JdEKRl1qj0qtrYA_15_6">3,175</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_XVztWUeXuUaHYxz6GEAC-A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="3" id="Tc_EvWZjYWFUESE4RvJvzUSCw_15_9">5,567</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_YVbT8PtiBUW0Qj_8Fj5ITw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="3" id="Tc_xScafrhzvUymkrmH4U4RFQ_15_12">5,911</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total cost of revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="3" id="Tc_YM26JppKI0mFFytXuseYpw_16_3">19,115</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="3" id="Tc_vZ7lpPK19UaEp8MEpiae3Q_16_6">20,040</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="3" id="Tc_vyk6NxRjBUWzy_vR5Vi5sw_16_9">36,774</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="3" id="Tc_t5lkCkjTYEW-8J9dGU7zPw_16_12">37,418</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Gross profit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Gross profit - sales revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_us-gaap_ProductMember_4y30Rvu4XkSp7uSHLJeLFQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="Tc_DAC7TDQMgk6WH0lTkG1Skg_18_3">48,004</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_HwKD6hwGZ0equ26Z4poEYQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="Tc_46lAeOd1kU-wjGiVnF8zyw_18_6">42,937</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_us-gaap_ProductMember_QSwcFcYa7UqLcB0gfKdhuQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="Tc_z_VaDXrmpE2-OGug-G-xOQ_18_9">86,367</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_BupDevr4vEaRIVahiBu9bA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="Tc_TBsb9z2ToEaUHLyidjkqTg_18_12">81,086</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Gross profit - rental revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_ILVH-vKmt0WIR5ZPg5Cc6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="Tc_FY1uPmN5Q0CrpyBvHZe2HQ_19_3">6,099</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember__lHk1zY_ZkiZZP9bct_GxQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="Tc_-guLb8dnkEitfM6BeiTIEQ_19_6">5,362</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_XVztWUeXuUaHYxz6GEAC-A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="Tc_TKj-OvXwikKu4Sw98XRREg_19_9">11,165</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_YVbT8PtiBUW0Qj_8Fj5ITw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="Tc_MZ2Op-H5zkyEV4iNvwwupQ_19_12">8,681</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Gross profit</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="Tc_Y6XAQoF8WkOAIcVkNO8sgQ_20_3">54,103</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="Tc_HCJSzRDjlEiToPl_k1mSkg_20_6">48,299</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="Tc_HeCYLf7y7UWYHBZu29GjdQ_20_9">97,532</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="Tc_QZhLSMigd0OuJKSvL2w8qQ_20_12">89,767</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Operating expenses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales and marketing</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SellingAndMarketingExpense" scale="3" id="Tc_g6fn6TE0_UqRXWzxFLL6Mg_22_3">28,608</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SellingAndMarketingExpense" scale="3" id="Tc_jDgLJe4AV0CxlhZev-JAzw_22_6">28,206</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SellingAndMarketingExpense" scale="3" id="Tc_thkuHkOQ_kOafL2JUHNVAw_22_9">55,965</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SellingAndMarketingExpense" scale="3" id="Tc_9RsTXBmyR0yTLpqlX57YAA_22_12">54,508</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Research and development</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ResearchAndDevelopmentExpense" scale="3" id="Tc_HawaQ3MMqU6BYbQSle38kw_23_3">2,234</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ResearchAndDevelopmentExpense" scale="3" id="Tc_ObF4BkKQLkCFdQ6URNLqKw_23_6">1,833</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ResearchAndDevelopmentExpense" scale="3" id="Tc_MsquWiZiNUaliqS8ta7zCQ_23_9">4,377</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ResearchAndDevelopmentExpense" scale="3" id="Tc_l1CuIlU_QkG98hEcx01bOw_23_12">4,066</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Reimbursement, general and administrative</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="3" id="Tc_-mDA5lTK-U-fPmRr2bz57g_24_3">16,779</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="3" id="Tc_BA7GNB8n6E-3gHh7BTPnxg_24_6">14,991</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="3" id="Tc_7K6fla0jRUSU73WF1Rlxfg_24_9">33,040</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="3" id="Tc_rzkLrbCnCUiZRqUk4MGpvw_24_12">30,425</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Intangible asset amortization and earn-out</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="tcmd:AmortizationOfIntangibleAssetsAndEarnOuts" scale="3" id="Tc_1xPjpwj4mEqCf_aivtGKSQ_25_3">633</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="tcmd:AmortizationOfIntangibleAssetsAndEarnOuts" scale="3" id="Tc_9Bezua4dzk-b9nq91NpKSw_25_6">1,211</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="tcmd:AmortizationOfIntangibleAssetsAndEarnOuts" scale="3" id="Tc_Iq7GEIboyUSs7V_dwbZHJA_25_9">1,265</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="tcmd:AmortizationOfIntangibleAssetsAndEarnOuts" scale="3" id="Tc_jEsdFDDWjUWkdVhbPNfHog_25_12">2,516</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total operating expenses</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingExpenses" scale="3" id="Tc_obreFw9E-0q-0796v-ASJg_26_3">48,254</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingExpenses" scale="3" id="Tc_rGTT-u4xI0q74JKU4m_zBw_26_6">46,241</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingExpenses" scale="3" id="Tc_i-2G3eGmVUS1GEONEIgpRA_26_9">94,647</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingExpenses" scale="3" id="Tc_o1xsMpY_Yk638pFb4YDkDw_26_12">91,515</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Income (loss) from operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="Tc_3TX3rGA470KBXguPJfNHCQ_27_3">5,849</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="Tc_cSRG0b9vo0-zdXKuE9vdrw_27_6">2,058</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="Tc_jCFDdeBQskSi9MZ2lZpPjA_27_9">2,885</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" sign="-" scale="3" id="Tc_o4PNfVJEL0OIM8hPo0FVbg_27_12">1,748</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Other income (expense)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NonoperatingIncomeExpense" scale="3" id="Tc_BRYTkCtVVkma0AiCaKg1JQ_28_3">225</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NonoperatingIncomeExpense" sign="-" scale="3" id="Tc_KaepMRx9EEON8WkSEopuhA_28_6">838</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NonoperatingIncomeExpense" scale="3" id="Tc_Uez8YrXXVUGxbBYEWv2K2w_28_9">380</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NonoperatingIncomeExpense" sign="-" scale="3" id="Tc_brPguPC2hUqmd5yiHB6RuA_28_12">1,831</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Income (loss) before income taxes</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="Tc_177x15nh4UC-n8s4mW5naA_29_3">6,074</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="Tc_30RcaMotXESwD4ULSqy4Jg_29_6">1,220</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="Tc_zss_jT-RIkCGGS2DzqpeEw_29_9">3,265</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" sign="-" scale="3" id="Tc_0-EiCik4bU-Ic-pvymTGqQ_29_12">3,579</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Income tax expense (benefit)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="Tc_H9STgXD4JUaTCD0dbWSk2A_30_3">1,776</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="Tc_KLcKhE6qtU6J6DgC_hweuA_30_6">1,320</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="Tc_DzJuejH5-06ZYi_pk6pzow_30_9">1,176</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" sign="-" scale="3" id="Tc_sh_6RnqGVkqyD08lTHV6fA_30_12">1,593</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Net income (loss)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="Tc_oIkkiWiuLE6JfywQb14U3A_31_3">4,298</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" sign="-" scale="3" id="Tc_025FWiDFN0Cvx7ZgEcYNdw_31_6">100</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="Tc_IDZMG3IDV0KIw47sI3MivQ_31_9">2,089</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" sign="-" scale="3" id="Tc_UUg-hIjBTUKZ9_lC6N7scw_31_12">1,986</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net income (loss) per common share</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Basic</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" scale="0" id="Tc_VirZ7vBZ8kKh_GcNjemkvQ_33_3">0.18</ix:nonFraction> </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" scale="0" id="Tc_TyQ957JJ10itGP4lpWB8Nw_33_6">0.00</ix:nonFraction> </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="2" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" scale="0" id="Tc_fTLs6PYfzECMM_we0iF5Jw_33_9">0.09</ix:nonFraction> </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(<ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" sign="-" scale="0" id="Tc_LFhnHb1nIEC4eQDIw42NaA_33_12">0.09</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Diluted</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" scale="0" id="Tc_IcBgUHLHgEm_KMiMMlheEQ_34_3">0.18</ix:nonFraction> </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" scale="0" id="Tc_dMzu7fE28UGOaK1kO_FHmg_34_6">0.00</ix:nonFraction> </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="2" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" scale="0" id="Tc__7hMDowCwkuaBaGw5CxTsQ_34_9">0.09</ix:nonFraction> </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(<ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" sign="-" scale="0" id="Tc__M2nArjTD0amZNeRaZwZow_34_12">0.09</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Weighted-average common shares used to compute net income (loss) per common share</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Basic</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" id="Tc_yqJIRQnbJkeNk_Rr8F75KA_36_3">23,873,379</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" id="Tc_D5vOKR2AHUSecbheDzNLgA_36_6">23,352,530</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" id="Tc_iAW6RyYkcUe9A9rl22tjMg_36_9">23,769,604</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" id="Tc_zEkr9L6QxU2Fc2wONZ4JXw_36_12">22,323,856</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Diluted</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" id="Tc_ZKqdoyQ_JkaBoBcF9mQ8Mg_37_3">24,099,047</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" id="Tc_1wJWnP2OnEuLKNmysSDopQ_37_6">23,352,530</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" id="Tc_UQdGI2pzgUmbqDNxRrLbBg_37_9">24,073,986</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" id="Tc_lkRnDWyWqUCY7wVO-DW9CA_37_12">22,323,856</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 6pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The accompanying notes are an integral part of these unaudited condensed consolidated financial statements.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="display:none;font-family:'Times New Roman','Times','serif';line-height:0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">5</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_d12fc3d7_6ffc_4a11_8691_39ab0126af16"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="display:inline-block;text-align:left;text-indent:0pt;width:36pt;"></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;visibility:hidden;">&#8203;</span></p><a id="_1abda04e_aafc_4edc_94fa_74d8d70bb55a"></a><a id="Tc_rorgQGT4GkmDIHimvY6_gg_1_0"></a><a id="Tc_A76kwPDx-kiVJ97zKxEZmg_2_0"></a><a id="Tc_VSe5-PBOfk6LTx1-fMxhHQ_3_0"></a><a id="Tc_I-Hly97pI0qoVTe_HMwFeA_6_10"></a><a id="Tc_JdjEiG6tYUe5TO1e7L7_TA_7_7"></a><a id="Tc_qJpBBFF740yiBiHJ89Zb8w_7_10"></a><a id="Tc_4jKDmfLvUk-RooAP9r0Fyg_8_2"></a><a id="Tc_7SZQXIYq2kSLGIPAa42IMw_8_7"></a><a id="Tc_b03CBuSllky9-GWIfkUJug_8_10"></a><a id="Tc_Phj5Jid-LUG7GDVbyvblcw_9_0"></a><a id="Tc_Wlvd1ta2X0ymYuGe_4F_rw_9_2"></a><a id="Tc_37b9T3lIp0uKnXaq-xuUzA_9_4"></a><a id="Tc_vQImttCPAkmbABADfXKNKw_9_7"></a><a id="Tc__oz3SI9wtUmpQUv2ofegoQ_9_10"></a><a id="Tc_d-DxIQnWVk-8IBThhGxwkw_9_13"></a><a id="Tc_3JgasOSLpkOBvAo7PoY5Vw_10_0"></a><a id="Tc_50aH1EbHCk-9v8XBqaWqfQ_10_4"></a><a id="Tc_PxkFPA8LWk-Tka9YtyHX6A_10_7"></a><a id="Tc_Qg3KESkpXEazn3RhD6hKxA_10_10"></a><a id="Tc_Smj69GV_Nk6wz0xsJTs9Bg_10_13"></a><a id="Tc_mtEAVJCIakimJmPpjTmNGg_11_0"></a><a id="Tc_P_nL7UeZPk6nlzZTAtQnQA_11_2"></a><a id="Tc_24qKP4vxYkWrlTyCnxgu7A_11_5"></a><a id="Tc_Nwap4QrWJkawCA4M9G-14Q_11_11"></a><a id="Tc_Del2vpUtd0yFVUyH2DzoOg_12_0"></a><a id="Tc_2dPe5S6WxkOghXT3FZyuCg_12_5"></a><a id="Tc_qAwqLQfWPk27HjJaph5cHg_12_11"></a><a id="Tc_X2UYZFsFlkCrT6LI-xZdmQ_13_0"></a><a id="Tc_OLmQ6Fqi20qh0KorrbyM5A_13_5"></a><a id="Tc_aENz-sMsqkCEPn-TztxN_g_13_11"></a><a id="Tc_90-fzSNpy0ui8yYRGdtjdw_14_0"></a><a id="Tc_fFORCIgpzk6QFnyAbpwXvQ_14_2"></a><a id="Tc_eAq3UCqQtky7Tl56NgGU2g_14_5"></a><a id="Tc_mOaCsPcyA0KiPLMXXqoY7g_14_8"></a><a id="Tc_bBf3g-4Ogk2u-JWPWXnqYQ_15_0"></a><a id="Tc_Em4a4RdiUkuJL1348TDFAw_15_4"></a><a id="Tc_SM18amnEjkKKdD0lDymXqw_15_7"></a><a id="Tc_1LLns9aKBkKY_499-nLbDA_15_10"></a><a id="Tc_6-laCIu0EkaTpJUkfRQDUQ_15_13"></a><a id="Tc_kbezNfLRUky6aYrcml3ofQ_17_0"></a><a id="Tc_1WbIjeF0S06pLQmpo1JzcQ_17_4"></a><a id="Tc_QX_PChhTqkWRx1tFnEiyIg_17_7"></a><a id="Tc_FdTVmie-fkuRyuqC_znSiA_17_10"></a><a id="Tc_vGW_jMCKUk6SUExZEnNuYA_17_13"></a><a id="Tc_V3JG-Ki1VEq7ByFiqL6X2g_18_0"></a><a id="Tc_XEk3xaPyKkGz0Pm5uDt2cQ_18_2"></a><a id="Tc_Bpt--sGo3kW_UoUj2OZb1A_18_5"></a><a id="Tc__CS1Gwfzc0W-oFcTK1bRqQ_18_11"></a><a id="Tc_pBwZsp7XN0K7f7vq-FNAkg_19_0"></a><a id="Tc_XJfRRonTNkypbkq08egd9w_19_5"></a><a id="Tc_muKpePHKmE-OgwbuTIs6bg_19_11"></a><a id="Tc_FscUXhdh70Kw_QTBqfZNLQ_20_0"></a><a id="Tc_dOGZXm--V0WOHYUw5BehJA_20_5"></a><a id="Tc_YIC5xayEakilxuDu52tw6Q_20_11"></a><a id="Tc_0SEy8QqVoEyMUod6MkT4lQ_21_0"></a><a id="Tc_IBIfzFNKXU6BGB2bh_h2Lw_21_2"></a><a id="Tc_0p61ccj9dkCkEQ38oPZzfQ_21_5"></a><a id="Tc_uif5X4lsYEegvzEMnX3uMQ_21_8"></a><a id="Tc_6u9Rh-vyRU-_MKYsuSaL4A_22_0"></a><a id="Tc_WGMWI5r6Qki-0Ys5X6A84w_22_4"></a><a id="Tc_hHY97l7dN0ewd9hBQJlFSw_22_7"></a><a id="Tc_l8Yn3IzqYUKEwMuZEokJEw_22_10"></a><a id="Tc_qsYSPKbFEEqiyxLE0c-1cQ_22_13"></a><a id="Tc__yGGVAu7b0mpbQe9QaeA7A_24_0"></a><a id="Tc_wYOC_OmfkU-ZCBo5jIG-eg_24_4"></a><a id="Tc_KRjzRHnw00-NNAhebShB-A_24_7"></a><a id="Tc_QQAch_nyAUGxoIxfiONERg_24_10"></a><a id="Tc_66F0HbX6bEWab3MlvRrLtQ_24_13"></a><a id="Tc_79fBkLUe80-GDCEWPvP0YA_25_0"></a><a id="Tc_JLu2YbSkbkStmuCkJp3SlA_25_2"></a><a id="Tc_rP8y0l_HYkykHzOfbKx_gQ_25_5"></a><a id="Tc_Zul-stA0Kke2YxIfvZxbLw_25_11"></a><a id="Tc_6PYGCTLkBESUw9jYOhjLdA_26_0"></a><a id="Tc_aLSuro_ifk-Jnn_rvL3RzQ_26_5"></a><a id="Tc_8XFSu9aqFkeJr7Qzh6mccg_26_11"></a><a id="Tc_UzdYWOu-E0-OoYOgFM11Fw_27_0"></a><a id="Tc_TQcAZOcqOUiIIa1vo9Fu_w_27_5"></a><a id="Tc_6wLdGNRmCE2yJWyjZntCcA_27_11"></a><a id="Tc_JnjQj_KRLEOaNJoOU3ryOA_28_0"></a><a id="Tc_3KZhOSedsU2pwKs8FzTRtA_28_2"></a><a id="Tc_3h7lkCH8KECq9F9Y10ZHzw_28_5"></a><a id="Tc_c_WBhH0HaEeagju6Q_MEtQ_28_8"></a><a id="Tc_dLVC_xIBdkeUlPLxduy0bA_29_0"></a><a id="Tc_1J3Xcba8KkGJQ_NXdO810g_29_4"></a><a id="Tc_10L5wCVXUEStRKxRmSkBQg_29_7"></a><a id="Tc_DL13tyP630eumgdUrf4q8A_29_10"></a><a id="Tc_OsnWUq714k26Nyb947CSkw_29_13"></a><a id="Tc_yCc9kKCN-0KukiTyKTk_RA_31_0"></a><a id="Tc__SJbgdxSGUm7mjxFTreXjQ_31_4"></a><a id="Tc_JGUO6ArjiEueCNOVkFfeFQ_31_7"></a><a id="Tc_BrOQqHXQSk-1yW6w6l5i4w_31_10"></a><a id="Tc_6el67R7zmEe_AaFlG0cg3Q_31_13"></a><a id="Tc_tvIMjSJgDU-cLXIf_b5GLQ_32_0"></a><a id="Tc_mNkisTyeaUiNGdJ7pONfBA_32_2"></a><a id="Tc_3SvrP2CgvUO2WmSufMEsMA_32_5"></a><a id="Tc_5EhmG4Leo0u6EQvVBZV11A_32_11"></a><a id="Tc_L3V6xZQjjk6OdswcHEFEcQ_33_0"></a><a id="Tc_WvSEXwwk0kysTRUlF-B04Q_33_5"></a><a id="Tc_WAuhQQj49kOhXtAKQ72ejg_33_11"></a><a id="Tc_a9QZIQCJ-ESKp_IhLmwGHA_34_0"></a><a id="Tc_tSx1DNFw8kCofMfsHEEMrQ_34_11"></a><a id="Tc_BKQTHshGYUSfgqBD45JcVQ_35_0"></a><a id="Tc_wamxmBoI50-b9NsrxG343A_35_5"></a><a id="Tc_s_HIV5_kGUGK6E_RK7uXhA_35_11"></a><a id="Tc_ZQYiY6hr9U-hY0YFcWlEDQ_36_0"></a><a id="Tc_Aa0Qab0ArkazKQuODpYEtw_36_2"></a><a id="Tc_7f6QaoISSUi27xsY2fYbFA_36_5"></a><a id="Tc_bd7Uy6rT1U2jtkWlLUYYug_36_8"></a><a id="Tc_CnRLDoQinkasg3Y4vfP8pw_37_0"></a><a id="Tc_leFdsAcdTka4h7CZvw9tog_37_4"></a><a id="Tc_krzkUpyWCECuY4tsDhC2Yw_37_7"></a><a id="Tc_ZttJjQpAHkyYzIFmcmPCMQ_37_10"></a><a id="Tc_vsTeVAVnHEqAg0bS1aARAg_37_13"></a><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td colspan="15" style="vertical-align:bottom;white-space:nowrap;width:100%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Tactile Systems Technology, Inc.</b></p></td></tr><tr><td colspan="15" style="vertical-align:bottom;white-space:nowrap;width:100%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Condensed Consolidated Statements of Stockholders&#8217; Equity</b></p></td></tr><tr><td colspan="15" style="vertical-align:bottom;white-space:nowrap;width:100%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(Unaudited)</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:22.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Retained</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Additional</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Earnings</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:22.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Common&#160;Stock</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Paid-In</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">(Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands,&#160;except share data)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Par&#160;Value</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Capital</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Deficit)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Balances, March 31, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_3_31_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_B5ujXctiDUy0R8L6FWWa4Q" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="Tc_WL3lHLv2O0Kv1cKKDObV6Q_10_2">23,761,897</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_3_31_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_B5ujXctiDUy0R8L6FWWa4Q" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_VD0YdBXjUEWhkIprcE-8Bw_10_5">24</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_3_31_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_MvPSx6K0zkmhTnlK51cAaw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_Qrv8nFXSwky1gAomsWKnWQ_10_8">176,764</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_3_31_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_BXxyhagQ8Ua2U2j-cXk-pw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_cBe8F3y27k6qU2drCYiOJg_10_11">16,685</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_3_31_2024_s2vwRyEnHUaXSAoq3iPMfA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_hTNjEPP1o0-Z2jipjW2G2g_10_14">193,473</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Stock-based compensation</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_J0ghJoQKikuBySgdYFDRRw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="3" id="Tc_940uVYNZ-UCCOS-uvpn_Xg_11_8">1,860</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="3" id="Tc_W7H67Pxc00it5_ZN93dKkQ_11_14">1,860</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Exercise of common stock options and vesting of performance and restricted stock units</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_zbzxuLeuX0WA-89ngSGt1A" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" id="Tc_jh8oU2GOsEOmjmtIeEmzTQ_12_2">96,944</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_J0ghJoQKikuBySgdYFDRRw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="Tc_YYppp_XaYEy6NPqTU74qnA_12_8">1</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="Tc_7TCCnFMB9kKujrm5tQq2Vw_12_14">1</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Common shares issued for employee stock purchase plan</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_zbzxuLeuX0WA-89ngSGt1A" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="0" id="Tc_AHPTsKHhb0GoZKKr0Oh45A_13_2">107,907</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_J0ghJoQKikuBySgdYFDRRw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="Tc_HnA1P-rcrEStVIM6u6Mx7g_13_8">1,044</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="Tc_Vz5eeYsgtUmSJg-8qVazvw_13_14">1,044</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net income for the period</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_ibbw37t6vEur60DioIQ0Tw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="Tc_6_mXLhrWsE6VCuxqwQ67vg_14_11">4,298</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="Tc_HZB27Y3QEUOkYD8K27wLnw_14_14">4,298</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Balances, June&#160;30,&#160;2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Ja7L9bPAeEypmuDVmRH_LQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="Tc_KugY8PzZB0a4dc9LPi1rOA_15_2">23,966,748</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Ja7L9bPAeEypmuDVmRH_LQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_2QGto-SLnE6raYxktOqNOQ_15_5">24</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_7qV41BfyZka_83Rd9E4Dnw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_NJOjx5UmBk6SOnXnaUzgKA_15_8">179,669</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_80kahcYOjUqGkQmzsGi_dQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_UkwDo5QTp0K7aY2uqSwBiQ_15_11">20,983</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_H0FZbcJ5CkGcgCALNK6j2w_15_14">200,676</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Balances, December&#160;31,&#160;2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_12_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_CLuecX-YY0KpWQKUfn-hnw" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="Tc_37a5fZUalE-shAeXCY5E7w_17_2">23,600,584</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_CLuecX-YY0KpWQKUfn-hnw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_eQH1sxKcB0Ss0kHLedddHg_17_5">24</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_w04Ejjo6aEC4Vj6ji9xY6Q" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_Cm_s1gM_1Ei_MlPKepEffQ_17_8">174,724</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_RtAfzhqQc06IEEJXgu3j4w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_Kb5CjeZ9S0K5FD9YR4bBaQ_17_11">18,894</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_66nIRg2xnESZhwCuP8Y5nw_17_14">193,642</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Stock-based compensation</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ST13CInb-EmfSee4XYZJhQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="3" id="Tc_r1jUM2gIW0SXjkfGxbiLjA_18_8">3,899</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="3" id="Tc_xtyRrZRPjECiAvlwTZ2X1A_18_14">3,899</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Exercise of common stock options and vesting of performance and restricted stock units</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_S9yXGNhU9UKSi2_fDuRiQQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" id="Tc_0hE1AIcgoUGNnJl00HLrPA_19_2">258,257</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ST13CInb-EmfSee4XYZJhQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="Tc_UvjTMAo3jk6WWy-bLPUg9A_19_8">2</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="Tc_ce3qijg5MkelvFIejqNUHQ_19_14">2</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Common shares issued for employee stock purchase plan</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_S9yXGNhU9UKSi2_fDuRiQQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="0" id="Tc_S_I9fLEhIE6x61E5nH4dGA_20_2">107,907</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ST13CInb-EmfSee4XYZJhQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="Tc_dPsVi_vlhUapY7BgR-BvpA_20_8">1,044</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="Tc_VGJz-IGiqEeWHltC67cwZg_20_14">1,044</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net income for the period</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_Yedyqhznj0ylqwvdHw90Pg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="Tc_YHGJoYLcxkGbuIw6drVPHQ_21_11">2,089</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="Tc_3Fju5KMHlU-0qtWhCq8nOQ_21_14">2,089</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Balances, June&#160;30,&#160;2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Ja7L9bPAeEypmuDVmRH_LQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="Tc_Lm61FyH6RkCxTu1jPNzbqg_22_2">23,966,748</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Ja7L9bPAeEypmuDVmRH_LQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_BnnMtKBa8kihykhWpJ6WQA_22_5">24</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_7qV41BfyZka_83Rd9E4Dnw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_e8q_NZFBUUGnBjLZJNby5w_22_8">179,669</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_80kahcYOjUqGkQmzsGi_dQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_eX-bSFPK3EO_JqvwAmScGw_22_11">20,983</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_pZYshGz0Vkm-VpKP4V3YZQ_22_14">200,676</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Balances, March 31, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_3_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_kAOIRnbew0qeVvqp_HVpkQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="Tc_uw9SDyI8cUmNygKgkUZOxg_24_2">23,235,065</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_3_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_kAOIRnbew0qeVvqp_HVpkQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_CWn4-kEpCEOZrUkyvU34hQ_24_5">23</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_3_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_d36bTXgWZkiZ7EHkkq1JSQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_k7hrlgCT2kikTt5ay43j6w_24_8">167,646</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_3_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_6drRJqsWmEiCdYkNFfUBcg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" sign="-" scale="3" id="Tc_W8auS0_Z_0WdAYQaXAtcbw_24_11">11,507</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_3_31_2023_GzRMMUTuf06M6Ru_HEW-nQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_3UoML2TiMEu_R83nBdEoHw_24_14">156,162</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Stock-based compensation</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_bK_LDr7y5EuAEmaMrb2C_g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="3" id="Tc_lzPBxaOvuUGoHQAmOyRpwg_25_8">1,808</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="3" id="Tc_CbIBov_qLkGTEsiPjUmgbA_25_14">1,808</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Exercise of common stock options and vesting of performance and restricted stock units</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_e7J9PZx4B0CJsJ37JZBH6A" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" id="Tc_XMUy0jDiFki-72MHu4sD1g_26_2">102,421</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_bK_LDr7y5EuAEmaMrb2C_g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="Tc_1hMlbTOZpEmHv-4Wk0yjXw_26_8">11</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="Tc_Af7v5_DdQkubYehR3xhNIg_26_14">11</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Common shares issued for employee stock purchase plan</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_e7J9PZx4B0CJsJ37JZBH6A" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="0" id="Tc_MUytMcauQ02JCkg7TwjIjw_27_2">120,816</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_bK_LDr7y5EuAEmaMrb2C_g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="Tc_SgOG8tali0iX5gQOIrMPkw_27_8">882</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="Tc_nwcBBkFyRk61eHqsL6eJUQ_27_14">882</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net loss for the period</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_wxh6APmFhECFWHr4QthFKg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" sign="-" scale="3" id="Tc_nXjUbnwflkuIlvxd5L8y1g_28_11">100</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" sign="-" scale="3" id="Tc_0Kp8qFK5FE2bPKN4FXrHyA_28_14">100</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Balances, June&#160;30,&#160;2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_30z85V5qLkSLDlvX5dRwEg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="Tc__54Z3dPRiUqtVwtaF8zNAg_29_2">23,458,302</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_30z85V5qLkSLDlvX5dRwEg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_wozlVuDBi0mSHnpNhS0QUA_29_5">23</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_13sgjWDjcUqE7NbRxeVPXA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_760trkzVjEy1qHveboEn3w_29_8">170,347</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OO4DbeD3AEuYBsybMePZxw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" sign="-" scale="3" id="Tc_m6aB-UGdJEK3zHLskTe_jw_29_11">11,607</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_XFCGKjyjb0SvGrnvwMpZTQ_29_14">158,763</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Balances, December&#160;31,&#160;2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_yLsLXAjRdk6_unp2ysQ8AQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="Tc_cCKbFygPMUmFlSDNIQavvA_31_2">20,252,677</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_yLsLXAjRdk6_unp2ysQ8AQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_nDzaP9CO-UacBoH-8SEZrw_31_5">20</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ASCF8Ypet0u4EkCXTQBYNw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_c8qQ6obS-0qp9R68WEkZzw_31_8">131,001</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_j5Wy2RVWcke1i_MukAuSBQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" sign="-" scale="3" id="Tc_ok3iP7lpcEqnrASeGEOspQ_31_11">9,621</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2022_8ruiuWr-P02VR3cPNU5Dgw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_GcXU2V01RkWLLeMdVVnHwg_31_14">121,400</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Stock-based compensation</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ElL0pZQUckeSchyAIFmu2g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="3" id="Tc_GVeHqj1nn0Wn2EyTF_wd_Q_32_8">3,831</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="3" id="Tc_9HJKhTn520q8guKtCyEuGg_32_14">3,831</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Exercise of common stock options and vesting of performance and restricted stock units</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_DqwGVt8-C0mv1goAlHzaQQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" id="Tc_jzwN4pSpWUmyGaOBihcK_Q_33_2">209,809</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ElL0pZQUckeSchyAIFmu2g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="Tc_8bRMlW9VIkGiKAKdbfVFdA_33_8">11</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="Tc_B0LBXOssj0KlIhPyhQQ_lw_33_14">11</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sale of common stock from follow-on public offering, net of offering expenses</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_DqwGVt8-C0mv1goAlHzaQQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" scale="0" id="Tc_ffp4TAD48EOqeCzM_e9EwQ_34_2">2,875,000</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_DqwGVt8-C0mv1goAlHzaQQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" scale="3" id="Tc_lvkiKrHn-U6wOnjNHGMCHg_34_5">3</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ElL0pZQUckeSchyAIFmu2g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" scale="3" id="Tc_bTzE3Qg6a0alWimBsVz4Vw_34_8">34,622</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" scale="3" id="Tc_lVN5waP2ykOi77ebO9wxHA_34_14">34,625</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Common shares issued for employee stock purchase plan</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_DqwGVt8-C0mv1goAlHzaQQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="0" id="Tc_QE4YLO_veUmPPBTB9Teg7g_35_2">120,816</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ElL0pZQUckeSchyAIFmu2g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="Tc_B6ilZTJor0GwkpqzZs6fCA_35_8">882</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="Tc_vyFmzd-bh0GAoOooOaan3w_35_14">882</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net loss for the period</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_utuRRgp72k2gz9Ez2cPuvg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" sign="-" scale="3" id="Tc_K3fJ_4FBFUCAIzYJmgqXlg_36_11">1,986</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" sign="-" scale="3" id="Tc_ZBmBLOlLkE63KLpZmLIRGg_36_14">1,986</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Balances, June&#160;30,&#160;2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_30z85V5qLkSLDlvX5dRwEg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="Tc_v6YRILDqv0aB99BfKaOAnw_37_2">23,458,302</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.93%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_30z85V5qLkSLDlvX5dRwEg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_maF7K9gWv0urYhWMVOD6iA_37_5">23</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_13sgjWDjcUqE7NbRxeVPXA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_PTPfq6B30k6ChzGxFJHJCQ_37_8">170,347</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OO4DbeD3AEuYBsybMePZxw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" sign="-" scale="3" id="Tc_-UXExfWQzUmCF0Aavy3s7g_37_11">11,607</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="Tc_P4ZJfnv0xE-xhG0yFlJ7hA_37_14">158,763</ix:nonFraction></span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The accompanying notes are an integral part of these unaudited condensed consolidated financial statements.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">6</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_a77c863f_6a12_4f00_8f24_f5792b8739f5"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p><a id="_6340acf7_9fdf_42c5_81d0_8e8d70e903d6"></a><a id="Tc_ljoUeboiWE2Ii7DuXEy2pA_1_0"></a><a id="Tc_0ONcNFIJwUGJqzNDxnjUGw_2_0"></a><a id="Tc_1GBkEP0YGEWdlf0m1p_Z0Q_3_0"></a><a id="Tc_mhGaWHRsZE6S94E0j62DMg_5_2"></a><a id="Tc_hwx3XC23ykChZ4vkZ-vJQA_6_0"></a><a id="Tc_5kh-oz9Cl0OZmyOtenKVVQ_6_2"></a><a id="Tc_xGIlteXPBEat_F-Ex_UPeQ_6_5"></a><a id="Tc_Wb8MmCVelUO4UGR6PCTu-Q_7_0"></a><a id="Tc_3RRYLJGNJk2RnlS_rRmtpQ_8_0"></a><a id="Tc_guxvuOLhY0mIeHeqKvxqBA_8_2"></a><a id="Tc_oi7rESFiAkiO8UcZYZDoSg_8_5"></a><a id="Tc_JJDkY-HNXECYtKNzpzkvyQ_9_0"></a><a id="Tc_sM5qBwrtCUOMqhOrw4p1Gg_10_0"></a><a id="Tc_r7TdBK-_u0GPJrdmtFFdbQ_11_0"></a><a id="Tc_i0hmNUbVkUW34aCRKuPCsQ_11_6"></a><a id="Tc_BdUJKYDZDEa9b9YbjQfF5A_12_0"></a><a id="Tc_0wVJQ-F7UEaR7ZiEKaLbzA_13_0"></a><a id="Tc_-E_Hj7mUdUGuFR5hxjPhvg_14_0"></a><a id="Tc_hzooHBUP30OPRbOgbiyzag_14_3"></a><a id="Tc_Qe0OVJk4Fk6_7ZFIhrlj4w_15_0"></a><a id="Tc_2hZfuobuGU2ZlOrCw6Wryg_16_0"></a><a id="Tc_dzQlqLMrNUuNAPDESegcAQ_17_0"></a><a id="Tc_boLqFFeMn06-bf71aWWWiw_18_0"></a><a id="Tc_taAUWJxbMkWYfEkraGAUxA_19_0"></a><a id="Tc_KvB_sCT2bUWvGGuobiQhJA_20_0"></a><a id="Tc_EswJtjkkOkqBT7D4Nhu1bg_21_0"></a><a id="Tc_ozLhGPAU8kCJwqM5-3qGaA_22_0"></a><a id="Tc_VZ-TkfNUm0KSbNcyxVlV_A_23_0"></a><a id="Tc_CMk522fI6EuP5aOryflJWw_24_0"></a><a id="Tc_AS_jl2nl_kOR_OMeIlCxRw_25_0"></a><a id="Tc_7Hnj21xg2EGQzRKbGI7YfA_26_0"></a><a id="Tc_2yznsJ7TvEOtft444lEJ0w_27_0"></a><a id="Tc_o6IbtU6L-ESQ27pWUqhyEw_28_0"></a><a id="Tc_HwAq6chm7kSdAShr07RT6w_29_0"></a><a id="Tc_yy3tqo_6iUekheWUL0Bgug_29_6"></a><a id="Tc_fxh5eI-4tU2SlMVF8dkvfw_30_0"></a><a id="Tc_Tx4lAh5hKEmWB0o1yunU0g_31_0"></a><a id="Tc_wJAihEuiL0SMipwFlC2Giw_32_0"></a><a id="Tc_eiY9aYi_uUuOq1BPRpT4cA_33_0"></a><a id="Tc_BQXxko85T0-I5QmhhlqCAQ_33_3"></a><a id="Tc_s2ExZhYNIE-DQ0yO6Scurw_34_0"></a><a id="Tc_2J61AaEaX0umIjwocyoDvg_35_0"></a><a id="Tc_Nfifkrz9iEik8OKMBzZKsw_36_0"></a><a id="Tc_ufiltEya8kauLf-rEjN-pg_37_0"></a><a id="Tc_QuI-Nrr7uU2PoQBP_HB8fg_37_3"></a><a id="Tc_9Z7yGRq7sU6DKRZw7tl9fA_38_0"></a><a id="Tc_jqYm_1UhhUqVngc-5GjEvQ_39_0"></a><a id="Tc__18PX6Bb2UW_TK894rYpQA_40_0"></a><a id="Tc_pllz2e5_BUuprYYHDnzyZQ_41_0"></a><a id="Tc_iaUEPO45nEayUiH7-xfklw_41_2"></a><a id="Tc_cDQ6O5OIKkKrSxBue4tIbQ_41_5"></a><a id="Tc_9pE67ByviUCtp5YyzfGaWg_43_0"></a><a id="Tc_rbM8LYJWz0a4xN3ElkTlZA_44_0"></a><a id="Tc_5pcU9Nz360K0XAUg15dy5g_44_2"></a><a id="Tc_0YJxV7GGx02AgvyKdqG0yA_44_5"></a><a id="Tc_ZcfOKY4vs0aY6jlSwDUQiQ_45_0"></a><a id="Tc_u8AKXPr55UyMU_HrV8aMfA_45_2"></a><a id="Tc_IBfAGxf4CUuqNfwDk48pew_45_5"></a><a id="Tc_MVWS4Ykcy02jUvayrr84vg_46_0"></a><a id="Tc_i9lI0XRUDUmM_RemNpFjIQ_46_2"></a><a id="Tc_vgrOyRetSU2zwHcpoHSU7A_46_5"></a><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td colspan="7" style="vertical-align:bottom;white-space:nowrap;width:100%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Tactile Systems Technology, Inc.</b></p></td></tr><tr><td colspan="7" style="vertical-align:bottom;white-space:nowrap;width:100%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Condensed Consolidated Statements of Cash Flows</b></p></td></tr><tr><td colspan="7" style="vertical-align:bottom;white-space:nowrap;width:100%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(Unaudited)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended June&#160;30,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Cash flows from operating activities</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net income (loss)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProfitLoss" scale="3" id="Tc_GlQFo9pAyEO-wfziKYbCEw_8_3">2,089</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProfitLoss" sign="-" scale="3" id="Tc_hjZirQe6L0-LPG_Qq-dFHw_8_6">1,986</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Adjustments to reconcile net income (loss) to net cash provided by operating activities:</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="color:#ff0000;font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 24pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Depreciation and amortization</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="Tc_YkKQ8q2CeEeWvautOO3CSQ_10_3">3,345</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="Tc_J4pFOrQsvEyb5R4nlO48Rg_10_6">3,269</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 24pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Deferred income taxes</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxesAndTaxCredits" sign="-" scale="3" id="Tc_8CgwyiVqvUuHm5Y8NTr8Ew_11_3">30</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 24pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Stock-based compensation expense</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensation" scale="3" id="Tc_AXJWpZZKsUmE4X-xh61V_Q_12_3">3,899</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensation" scale="3" id="Tc_Ex8fQZatJU2V7qt4RjLfig_12_6">3,831</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 24pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Loss on disposal of property and equipment and intangibles</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GainLossOnDispositionOfAssets1" sign="-" scale="3" id="Tc_ld--bbjK0k2vq4ARzPmEgw_13_3">54</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GainLossOnDispositionOfAssets1" sign="-" scale="3" id="Tc_t6elkFyrH0mjmxmyOP2Ysw_13_6">3</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 24pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Change in fair value of earn-out liability</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesFairValueAdjustment" sign="-" scale="3" id="Tc_Bo7aSamG2kuR1XGnO1i4IQ_14_6">1,230</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 24pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Changes in assets and liabilities, net of acquisition:</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 36pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Accounts receivable</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccountsReceivable" sign="-" scale="3" id="Tc_pHzMStr4-kyF0_ngAhex7g_16_3">1,238</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccountsReceivable" sign="-" scale="3" id="Tc_UfYRbnkk8UayQOk-zJxM5g_16_6">8,273</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 36pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net investment in leases</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="tcmd:IncreaseDecreaseInNetInvestmentInLease" sign="-" scale="3" id="Tc_yX9-Bewlp02QCSQjh6OTww_17_3">644</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="tcmd:IncreaseDecreaseInNetInvestmentInLease" sign="-" scale="3" id="Tc__i-lza3hiUCSkhbCnzBIZA_17_6">2,911</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 36pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Inventories</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInInventories" sign="-" scale="3" id="Tc__WMomdQNF0axky93jaO_dg_18_3">3,681</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInInventories" sign="-" scale="3" id="Tc_PErVG_HBJUqIJfDr16Ue7Q_18_6">2,809</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 36pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Income taxes</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInIncomeTaxesReceivable" scale="3" id="Tc_PfXJKu5vtEGjFs420ElZIA_19_3">922</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInIncomeTaxesReceivable" scale="3" id="Tc_Pw-mxsyJ2UOZ3EXt8oeX8g_19_6">3,967</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 36pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Prepaid expenses and other assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="3" id="Tc_pJoZnj3TY0qBHXtmdwjBDQ_20_3">364</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="3" id="Tc_hZwUbQ2I7EyeKIroie1ITw_20_6">697</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 36pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Right of use operating lease assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="tcmd:IncreaseDecreaseInOperatingLeaseRightOfUseAsset" scale="3" id="Tc_5GXjFgoloUa64VinyI54RA_21_3">2</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="tcmd:IncreaseDecreaseInOperatingLeaseRightOfUseAsset" sign="-" scale="3" id="Tc_VXDPwyvxZUa3hZIX-dj4LQ_21_6">50</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 36pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Accounts receivable, non-current</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInContractWithCustomerAsset" sign="-" scale="3" id="Tc_R3tv8a7e_0yITl74gTt9mA_22_3">6,425</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInContractWithCustomerAsset" sign="-" scale="3" id="Tc_ZAjKnbcCEkmhHKfGf3E95w_22_6">7,631</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 36pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Accounts payable</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccountsPayable" sign="-" scale="3" id="Tc_s-y8eFQb30eD2H_1ctSYkA_23_3">1,592</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccountsPayable" sign="-" scale="3" id="Tc_Yx9P_lXzXkKeiRFO_x6h6g_23_6">696</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 36pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Accrued payroll and related taxes</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities" sign="-" scale="3" id="Tc_QucdhPn4yE-2LrkIYmgQwA_24_3">4,699</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities" sign="-" scale="3" id="Tc_j3237q_chkSn5PUknCZ5JA_24_6">3,300</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 36pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Accrued expenses and other liabilities</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="tcmd:IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable" scale="3" id="Tc_6k8u9qwy3UKNMHh8Oa90-Q_25_3">300</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="tcmd:IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable" sign="-" scale="3" id="Tc_8RZXf1Glyk-NJexXwx_7mQ_25_6">5,954</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 48pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net cash provided by operating activities</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="3" id="Tc_3v3K1Wn-wk-61PrSiFC0jg_26_3">14,066</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="3" id="Tc_bvzrPrqsrU6ei7e5YJuf0Q_26_6">13,407</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Cash flows from investing activities</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Purchases of property and equipment</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="Tc_fJW6STY68kS3juVYPdCr5A_28_3">982</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="Tc_cN-yZEV2V0Waf81xM1Ab3g_28_6">1,043</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Proceeds from sale of property and equipment</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" scale="3" id="Tc_Jj2vnIj-50eHefCaJlez1g_29_3">12</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Intangible assets expenditures</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireIntangibleAssets" scale="3" id="Tc_iC4y8V1NqEGI1X3B5EFO_w_30_3">57</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireIntangibleAssets" scale="3" id="Tc_2YNk9feP5UuCe4qJVBRJrQ_30_6">99</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 48pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net cash used in investing activities</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" sign="-" scale="3" id="Tc_lceXzWExP0GNMGLq6uSLcQ_31_3">1,027</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" sign="-" scale="3" id="Tc_rAcbqWxiM0qqGhH9753lKA_31_6">1,142</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Cash flows from financing activities</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Payments on earn-out</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities" scale="3" id="Tc_CGQOJXesv0Wof0XqQLhH2Q_33_6">5,000</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Payments on note payable</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RepaymentsOfNotesPayable" scale="3" id="Tc_3KbCqJxvcEyQrGCMMSx-CQ_34_3">1,500</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RepaymentsOfNotesPayable" scale="3" id="Tc_0TPts1kwiUqYTk0QuwKQdw_34_6">1,500</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Proceeds from exercise of common stock options</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromStockOptionsExercised" scale="3" id="Tc_aiQJXQHmGEK37XLIL3p_KQ_35_3">2</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromStockOptionsExercised" scale="3" id="Tc_pOHYPBf2Z06KXyNcw_CXiA_35_6">11</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Proceeds from the issuance of common stock from the employee stock purchase plan</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans" scale="3" id="Tc_h_ec3HbELke-ZYE9OIJVzA_36_3">1,044</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans" scale="3" id="Tc_9Plao6YIhkWf1uu8YTkqPQ_36_6">882</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Proceeds from issuance of common stock at market</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceOfCommonStock" scale="3" id="Tc_b2TLK3WH40WMhA_QOKpaBg_37_6">34,625</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 48pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net cash (used in) provided by financing activities</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" sign="-" scale="3" id="Tc_spwniBHXJkmiap7DYFfQ4A_38_3">454</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="3" id="Tc_fczS0Zka-ECKJ5gckD5Kmw_38_6">29,018</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Net increase in cash and cash equivalents</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" scale="3" id="Tc_LMlOPkGUaEGV9QRDnPR08g_39_3">12,585</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" scale="3" id="Tc_esM5xAizG0G2bg8-hlpv0A_39_6">41,283</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cash and cash equivalents &#8211; beginning of period</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="Tc_w8QA8hz6fki05NStUuHCqA_40_3">61,033</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2022_8ruiuWr-P02VR3cPNU5Dgw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="Tc_RVrcDca0g0uKoi7Yur2jwg_40_6">21,929</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cash and cash equivalents &#8211; end of period</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="Tc_c4X0qqB-nUmemg6EeW18QA_41_3">73,618</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="Tc_Huw5_52zW028dc9ySmCB9g_41_6">63,212</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Supplemental cash flow disclosure</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cash paid for interest</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InterestPaidNet" scale="3" id="Tc_-mqpvRcUOk-So2xFW57uLQ_44_3">1,099</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InterestPaidNet" scale="3" id="Tc_SgdqWGlTwU6jLfg5tSMXag_44_6">1,925</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cash paid for taxes</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxesPaid" scale="3" id="Tc_P5rDsEDtPEq9ns7jf6aWDg_45_3">2,177</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxesPaid" scale="3" id="Tc_5auvx5FXN0eIs2JRwPDlig_45_6">2,415</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:69.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Capital expenditures incurred but not yet paid</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1" scale="3" id="Tc_xnKswG-J5kWnsqurxlESgw_46_3">27</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1" scale="3" id="Tc_QVTDK487ak6nzfamcTLDAg_46_6">8</ix:nonFraction></span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The accompanying notes are an integral part of these unaudited condensed consolidated financial statements.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">7</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p><a id="_a50e89e5_4719_4b39_b7eb_c6a04e1f596a"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Tactile Systems Technology, Inc.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Notes to the Condensed Consolidated Financial Statements</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;padding-bottom:12pt;text-align:center;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(Unaudited)</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:NatureOfOperations" id="Tb_HWB8RMgJLkqJ6xcIAsEZew" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 1. Nature of Business and Operations</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Tactile Systems Technology, Inc. (&#8220;we,&#8221; &#8220;us,&#8221; &#8220;our,&#8221; and the &#8220;Company&#8221;) manufactures and distributes medical devices for the treatment of patients with underserved chronic diseases at home.</span> <span style="font-family:'Arial','Helvetica','sans-serif';">We provide our Flexitouch&#174; Plus and Entre&#8482; Plus systems, which help control symptoms of lymphedema, a chronic progressive medical condition, through our direct sales force for use in the home following receipt of prescriptions from vascular, wound and lymphedema clinics throughout the United States. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On September 8, 2021, we acquired the assets of the AffloVest airway clearance business (&#8220;AffloVest Acquisition&#8221;). AffloVest is a portable, wearable vest that treats patients with chronic respiratory conditions. We sell this device through home medical equipment and durable medical equipment (&#8220;DME&#8221;) providers throughout the United States.&#160;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We were originally incorporated in Minnesota under the name Tactile Systems Technology, Inc. on January 30, 1995. During 2006, we established a merger corporation and subsequently, on July 21, 2006, merged with and into this merger corporation, resulting in our reincorporation as a Delaware corporation. The resulting corporation assumed the name Tactile Systems Technology, Inc. In September 2013, we began doing business as &#8220;Tactile Medical&#8221;.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On August 2, 2016, we closed the initial public offering of our common stock, which resulted in the sale of </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_8_2_2016_To_8_2_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_IPOMember_PBovED4p10Ca25HCHdj3XQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" scale="0" id="Narr_ri4E7q7WskS_sWrUplfhvA">4,120,000</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares of our common stock at a public offering price of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="As_Of_8_2_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_IPOMember_48lQgT0IJUaPjBMtULD0Eg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:SharesIssuedPricePerShare" scale="0" id="Narr_OzMpxv9jUUiZoTEQoBGLYA">10.00</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> per share. We received net proceeds from the initial public offering of approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_8_2_2016_To_8_2_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_IPOMember_PBovED4p10Ca25HCHdj3XQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceInitialPublicOffering" scale="6" id="Narr_Ub4g9bbsiUOvaDkfBLHl0A">35.4</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million, after deducting underwriting discounts and approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_8_2_2016_To_8_2_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_IPOMember_PBovED4p10Ca25HCHdj3XQ" decimals="-5" format="ixt:numdotdecimal" name="tcmd:ExpenseRelatingToInitialPublicOffering" scale="6" id="Narr_KMSGC1iSqEOCjeC2AgxwPA">2.9</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million of transaction expenses.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On February 27, 2023, we closed on a public offering of </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_2_27_2023_To_2_27_2023_us-gaap_SubsidiarySaleOfStockAxis_tcmd_FollowOnPublicOfferingMember_Hqq_A7B_4Ey4takoP09X0w" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" scale="0" id="Narr_TL_RhTj0-USI6tLQCV65ug">2,875,000</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares of our common stock at a public offering price of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="As_Of_2_27_2023_us-gaap_SubsidiarySaleOfStockAxis_tcmd_FollowOnPublicOfferingMember_eEYZ3aYCoUqISGDYuO2D3Q" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharePrice" scale="0" id="Narr_eWF8GHfEfEiDezMOMJOEAg">13.00</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> per share. We received net proceeds from this offering of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_2_27_2023_To_2_27_2023_us-gaap_SubsidiarySaleOfStockAxis_tcmd_FollowOnPublicOfferingMember_Hqq_A7B_4Ey4takoP09X0w" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceOfCommonStock" scale="6" id="Narr_-7r5HgrTI0-_a6l07SwHCw">34.6</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million after deducting underwriting discounts, commissions, and offering expenses.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our business is affected by seasonality. In the first quarter of each year, when most patients have started a new insurance year and have not yet met their annual out-of-pocket payment obligations, we experience substantially reduced demand for our products. We typically experience higher revenue in the third and fourth quarters of the year when patients have met their annual insurance deductibles, thereby reducing their out-of-pocket costs for our products, and because patients desire to exhaust their flexible spending accounts at year end. This seasonality applies only to purchases and rentals of our products by patients covered by commercial insurance and is not relevant to Medicare, Medicaid or the Veterans Administration, as those payers either do not have plans that have declining deductibles over the course of the plan year and/or do not have plans that include patient deductibles for purchases or rentals of our products.</span></p></ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" id="Tb_owec4RpTc02lAsPK55yoNg" continuedAt="Tb_owec4RpTc02lAsPK55yoNg_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 2. Basis of Presentation</b></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:BasisOfAccountingPolicyPolicyTextBlock" id="Tb_LatMrbDOWEOQsczpBv4LJg" continuedAt="Tb_LatMrbDOWEOQsczpBv4LJg_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States (&#8220;GAAP&#8221;) for interim financial reporting and pursuant to the rules and regulations of the SEC. Accordingly, they do not include all of the information and footnotes required by GAAP for complete financial statements. In the opinion of management, all adjustments (including those which are normal and recurring) considered necessary for a fair presentation of the interim financial information have been included.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The results for the six months ended June 30, 2024, are not necessarily indicative of results to be expected for the year ending December 31, 2024, or for any other interim period or for any future year. The condensed consolidated interim financial statements should be read in conjunction with the audited financial statements and notes thereto included in our Annual Report on Form 10-K for the year ended December 31, 2023.</span></p></ix:nonNumeric></ix:nonNumeric></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">8</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:continuation id="Tb_owec4RpTc02lAsPK55yoNg_cont1"><ix:continuation id="Tb_LatMrbDOWEOQsczpBv4LJg_cont1"></ix:continuation><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:ConsolidationPolicyTextBlock" id="Tb_qhuAuvLgSUax5TWgQOitWA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Principles of Consolidation</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The accompanying unaudited condensed consolidated financial statements include the accounts of Tactile Systems Technology, Inc. and its wholly owned subsidiary, Swelling Solutions, Inc. All intercompany balances and transactions have been eliminated in consolidation.</span></p></ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:UseOfEstimates" id="Tb_4LdAx0pSPUCqO8aFie-MiA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:14pt 0pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Use of Estimates</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:14pt 0pt 0pt 0pt;"><span style="color:#2b2c2b;font-family:'Arial','Helvetica','sans-serif';">The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and to disclose contingent assets and liabilities at the date of the financial statements and the reported amounts of revenue and expenses during the reporting period. Actual results could differ from those estimates.</span></p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="color:#2b2c2b;font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p></ix:continuation><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:SignificantAccountingPoliciesTextBlock" id="Tb__II8O_X4w0SUxsAi9hrx_A" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 3. Summary of Significant Accounting Policies</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Significant Accounting Policies &#160;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">There were no material changes in our significant accounting policies during the six months ended June 30, 2024. See Note 3 &#8211; &#8220;Summary of Significant Accounting Policies&#8221; to the consolidated financial statements included in our Annual Report on Form 10-K for the year ended December 31, 2023, for information regarding our significant accounting policies. </span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="tcmd:NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock" id="Tb_5HqRONqkOEmd4jE3MzTJ0Q" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Accounting Pronouncement Not Yet Adopted</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">In November 2023, the Financial Accounting Standards Board (&#8220;FASB&#8221;) issued Accounting Standards Update (&#8220;ASU&#8221;) No. 2023-07, &#8220;Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures&#8221; which requires entities to enhance disclosures around segment reporting. The guidance is effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024, with early adoption permitted. The Company is currently evaluating the effect this standard will have on its consolidated financial statements and related disclosures.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">In December 2023, the FASB issued ASU No. 2023-09, &#8220;Income Taxes (Topic 740): Improvements to Income Tax Disclosures&#8221; which requires entities to enhance disclosures around income taxes. The guidance is effective for annual periods beginning after December 15, 2024, with early adoption permitted. The Company is currently evaluating the effect this standard will have on its consolidated financial statements and related disclosures</span><span style="font-family:'Arial','Helvetica','sans-serif';">.</span></p></ix:nonNumeric></ix:nonNumeric><a id="Tc__WrbOSLcXkqK23RTE8Pwtg_1_0"></a><a id="Tc_qflCOJKIl0WjiILDKdHg4A_1_2"></a><a id="Tc_svIfOVtB5UKcoYWiSspGvA_1_5"></a><a id="Tc_aeXLHXFiWUmz3YuTizLqXg_2_0"></a><a id="Tc_l6vWVQON4EOPrjwYyk9y8w_2_2"></a><a id="Tc_6ZS8FLC6s0qwtCD8I-OR8Q_2_5"></a><a id="Tc_vemTV-5mrkSEYaVmAd0cOg_3_0"></a><a id="Tc_n_KmhzzDsEuljmb8CZA-tg_4_0"></a><a id="Tc_F0oNtwYY80-UtMxSR3IR0A_4_2"></a><a id="Tc_DsfTcM03K0CkNLbiUuSLKg_4_5"></a><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:InventoryDisclosureTextBlock" id="Tb_jB_XDwuByEaiCeJGau0DIA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 4. Inventories</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Inventories consisted of the following:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="Tb_uR5sQb5vQUCnuTOW1sUiBg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:40.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:25.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:25.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:40.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:27.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At June&#160;30,&#160;2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:27.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At December&#160;31,&#160;2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Finished goods</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryFinishedGoods" scale="3" id="Tc_F9CZ_kvV2kuSGAXovyOZWQ_2_3">6,365</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryFinishedGoods" scale="3" id="Tc_F3Rlo3tjs0ukJAZQQGKpoA_2_6">7,979</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:40.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Component parts and work-in-process</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryWorkInProcess" scale="3" id="Tc_nkpEPxgxGUi2URNMjNaVpg_3_3">12,481</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryWorkInProcess" scale="3" id="Tc_U1yuqM1_40mRmgsClGreFw_3_6">14,548</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:40.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total inventories</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryNet" scale="3" id="Tc_6ENhcCoxSUyMgFKF1WvTMQ_4_3">18,846</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryNet" scale="3" id="Tc_FXhZX5IqdE6w6Q3tMGlsNQ_4_6">22,527</ix:nonFraction></span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;margin-bottom:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock" id="Tb_l8_nfugUjk-JJoaZ5AddKw" continuedAt="Tb_l8_nfugUjk-JJoaZ5AddKw_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 5. Goodwill and Intangible Assets</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;padding-left:10pt;text-align:justify;text-indent:-10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Goodwill</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">In the third quarter of fiscal 2021, we completed the AffloVest Acquisition. The purchase price of the AffloVest product line exceeded the net acquisition-date estimated fair value amounts of the identifiable assets acquired and the liabilities assumed by </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_9_30_2021_us-gaap_BusinessAcquisitionAxis_tcmd_AfflovestPMember_HBTiVDnaWEqDE5O3XdlyeA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="6" id="Narr_nxfDRxNO40KWo3FApVgWEQ">31.1</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million, which was assigned to goodwill.&#160;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;visibility:hidden;">&#8203;</span></p></ix:nonNumeric></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">9</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_1d7d8c93_27a6_41cd_a7a2_8fedb8a077ad"></a><a id="Tc_bHz0eeThtkSKVJ7O0G_pKA_1_2"></a><a id="Tc_yiBTAdqjoUy-Rh1QlhLA_w_1_4"></a><a id="Tc_N7HJernNd0CWzmTxvWkshw_2_2"></a><a id="Tc_P4s0wIWzaU-ydUh-mTc_eg_2_4"></a><a id="Tc_RXHSXYiwtUmgA-DW2cPFuw_3_2"></a><a id="Tc_g5S8VI7mJ0G0eTlFIQDoPg_3_4"></a><a id="Tc_HOgbBqzVNUCs3rTv9lLRrw_3_7"></a><a id="Tc_nWOunH-Fr0S93umErYrwiw_3_10"></a><a id="Tc_odbixRkJb0KxFOnBOcl8Ow_4_0"></a><a id="Tc_mVn9EeTyj0iBOh3G1pM3MA_4_2"></a><a id="Tc_P0Bc0cxxSUi7pP3R7eY9kg_4_4"></a><a id="Tc_lgi_EypFb0W9DiS2sU_lgA_4_7"></a><a id="Tc_MhJ00RPdU0KkYtfSOrlIMw_4_10"></a><a id="Tc_a7ZNIvTGOU6TSHptzxablA_5_0"></a><a id="Tc_rHXcx0Ot70SXiTaiDcusIA_6_0"></a><a id="Tc_T9pmdsGVGEKKONJdjmHUyg_6_4"></a><a id="Tc_V-0A4UC_HE23YrzsHh1uKA_6_7"></a><a id="Tc_qrlR-MVoekGK5XWyzTKfMw_6_10"></a><a id="Tc_bJ0D2GzzAkS0jrgrS9bdag_7_0"></a><a id="Tc_9XueQDwuMk-6I7H319SOvA_8_0"></a><a id="Tc_VqeT2yjCPkW0MK65wggw9Q_8_2"></a><a id="Tc_OXP9MaJSMEqaFPuqo6jGMw_8_11"></a><a id="Tc_JAoc_kJ0Aku2Rz3_NyqdLQ_9_0"></a><a id="Tc_FItNX_BHc0iOgv5Q-xmtDQ_10_0"></a><a id="Tc_rBVoky_kjEOvAnZlsEFy2A_11_0"></a><a id="Tc_xm_uGblz-UGtR0Ukt4LYlw_12_0"></a><a id="Tc_vHcqRcp-lE2rmVbuvGVR7A_13_0"></a><a id="Tc_tbmRvNDxiEyOrAATndsXuw_13_8"></a><a id="Tc_dlGEdBcDIEqF4ityqYwlGw_14_0"></a><a id="Tc_Q9QCOmJizkOujbuVaUVSzg_14_8"></a><a id="Tc_4w65Y9GwbE2YpUMI2HGojA_15_0"></a><a id="Tc_2GMqJe8P5Uu9Lxc3CZyi7g_15_4"></a><a id="Tc_RAslr0NC6UKhYgZ6RWIfYA_15_7"></a><a id="Tc_2hMrFyuLE0CSu0QyLyFQXg_15_10"></a><a id="_61ba8b24_e327_4bfc_a459_1a3e8548c24b"></a><a id="Tc_WbkA7uN1M0-ew7J1BGgDiA_1_2"></a><a id="Tc_JOmu3nOj10O3WDWupca93w_1_4"></a><a id="Tc_a8K11BqRpUS8tG9dCsoQ8w_2_2"></a><a id="Tc_BDjO5ESbvUm3wmLIyD9RRw_2_4"></a><a id="Tc_NahXGUZjxkmWZqOgPVH-Tg_3_2"></a><a id="Tc_0V41EWAamEGWZvdzPrgjOA_3_4"></a><a id="Tc_zjnI2PfgcEaalASPODHP8Q_3_7"></a><a id="Tc_uFulMkGGL0-HgN--M76DCw_3_10"></a><a id="Tc_f0ebTSKfsUqNXa1buc4naw_4_0"></a><a id="Tc_LF9QiUz0ukCz929BdT2bJw_4_2"></a><a id="Tc_wxmSnjITJ0iiJ81fgIFHBQ_4_4"></a><a id="Tc_HfPAJwWhAUew4VVdRw3e7Q_4_7"></a><a id="Tc_ShRpw3Ahf0udJzhcKKSvOg_4_10"></a><a id="Tc_ear2xq1VkE6wW-l5cnjfZQ_5_0"></a><a id="Tc_1YNvd2cFK0mGYv6mmQ8ryg_6_0"></a><a id="Tc_N6mSc1KQpk-u5JIeEZztGg_6_4"></a><a id="Tc_pplX9ZaXCES0l8tIzaPFXA_6_7"></a><a id="Tc_mAMoaTs8XkG0KdlFtIbCag_6_10"></a><a id="Tc_XUGT1IREeEeVyQs6sSs8pQ_7_0"></a><a id="Tc_AYWEC4yfz0e2W2dvme45mQ_8_0"></a><a id="Tc_mJ3NKp7WqUWGtOHswSDOqg_8_2"></a><a id="Tc_7xFwZNB6Y0abP3AvvMM9lw_8_11"></a><a id="Tc_DmKmQOUZVkOk6w0jvEEkrA_9_0"></a><a id="Tc_-zeRoIHdTkGGS47wnEhwrw_10_0"></a><a id="Tc_vVWmyMI5EU26UEKfKHMG4A_11_0"></a><a id="Tc_RoCz1gTYKkyp7yDwvfFM0Q_12_0"></a><a id="Tc_U7jAak1wsU2J8Cmeil_N4w_13_0"></a><a id="Tc_Tma9-NCpNUSySpVruZSNIA_13_8"></a><a id="Tc_jdHesAdTEUqtLT8wKe7i0g_14_0"></a><a id="Tc_jexgkrg-jkysJU_xbL732Q_14_8"></a><a id="Tc_l2BuwKoazEGv4B2JPmW6vA_15_0"></a><a id="Tc_Jl2H9ngpEUqaP2ghQvsRcA_15_4"></a><a id="Tc_0fwPT4Z2uEmgU5OSJ1ClYg_15_7"></a><a id="Tc_Ab2ciNCOO0KiQul-a2QAXQ_15_10"></a><a id="Tc_xdayFf_IUUuPT4OZ74T8OQ_1_0"></a><a id="Tc_TuWoD2edj0SpAHjjoxLIww_2_0"></a><a id="Tc_Cy01R1CTtUC9weKW98JB6g_2_2"></a><a id="Tc_pS8-iOndlUKbkwa6si6sJg_3_0"></a><a id="Tc_mBQuHf7gnECJMYhJTBBd7w_4_0"></a><a id="Tc_QndVeUKNa0y4kooU60nmEA_5_0"></a><a id="Tc_zQuwsJiD90-PZtjm81a6gg_6_0"></a><a id="Tc_tW7drLbD2kC2SsD6LGuqzQ_7_0"></a><a id="Tc_-y3NFAv6HUellk6GNBM35Q_8_0"></a><a id="Tc_Ws_C_iEZiUSoNI5chFwlVQ_8_2"></a><ix:continuation id="Tb_l8_nfugUjk-JJoaZ5AddKw_cont1" continuedAt="Tb_l8_nfugUjk-JJoaZ5AddKw_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Intangible Assets</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our patents and other intangible assets are summarized as follows:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" id="Tb_Hvvnd3LB6kCRued-nDZ50w" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:48.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At June&#160;30,&#160;2024</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Carrying</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Net</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Period</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amount</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Definite-lived intangible assets:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Patents</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_t8KDwAfkq0yuvozStzCgug" format="ixt-sec:durwordsen" name="us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" id="Tc_1aOsVoU72EyaP_GmtUkk2g_6_2"><span style="font-family:'Arial','Helvetica','sans-serif';">12 years</span></ix:nonNumeric></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_t8KDwAfkq0yuvozStzCgug" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="Tc_mIE6NRy6BkaXuniM4PeAww_6_5">1,060</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_t8KDwAfkq0yuvozStzCgug" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="Tc_1kp9lH3RW0asPB6HuI50Ig_6_8">290</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_t8KDwAfkq0yuvozStzCgug" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="Tc_Z4G0_lfGn0yeeiPT7qpuPw_6_11">770</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Defensive intangible assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_jZTyB4NJI0uhYZwjPenLSw" format="ixt-sec:durwordsen" name="us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" id="Tc_g7gIK63tukeeXx1YsBCSoQ_7_2"><span style="font-family:'Arial','Helvetica','sans-serif';">1 year</span></ix:nonNumeric></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_jZTyB4NJI0uhYZwjPenLSw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="Tc_VzBNJ5O79Ui4GVo-lxvK7Q_7_5">1,125</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_jZTyB4NJI0uhYZwjPenLSw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="Tc_zDsrP4oovku47uB0nOYNkg_7_8">993</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_jZTyB4NJI0uhYZwjPenLSw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="Tc_NC7X1azHTEWzwRXqp6t1MQ_7_11">132</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Customer accounts</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerContractsMember_Q-B_OUgOLke18AcQjiT36g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="Tc_SbMd4Xb0REmcOnQUky5ufw_8_5">125</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerContractsMember_Q-B_OUgOLke18AcQjiT36g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="Tc_MZCrUFj2yEuMSe8TV_-y8A_8_8">125</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Customer relationships</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_ukSiPh-Yb0G0BxyoHC-AHA" format="ixt-sec:durwordsen" name="us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" id="Tc_lCuw-qWQJUmxpx3p0Tfs8Q_9_2"><span style="font-family:'Arial','Helvetica','sans-serif';">10 years</span></ix:nonNumeric></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_ukSiPh-Yb0G0BxyoHC-AHA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="Tc_pNJVi4cNSE6xlzgJxqgpuA_9_5">31,000</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_ukSiPh-Yb0G0BxyoHC-AHA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="Tc_ba-72GLYbU-I8GVhnM_XSg_9_8">6,704</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_ukSiPh-Yb0G0BxyoHC-AHA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="Tc_alDpTfgM30e9ApHhMkiUyw_9_11">24,296</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Developed technology</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_4CZOskMKuEmcZ4p8j9DBog" format="ixt-sec:durwordsen" name="us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" id="Tc_4YdNM0i9XEi0St7265cNeg_10_2"><span style="font-family:'Arial','Helvetica','sans-serif';">8 years</span></ix:nonNumeric></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_4CZOskMKuEmcZ4p8j9DBog" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="Tc_lAcVMINpbESwo8t7H37c4A_10_5">13,000</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_4CZOskMKuEmcZ4p8j9DBog" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="Tc_v79egrY9lEiINIPiLut0WQ_10_8">3,322</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_4CZOskMKuEmcZ4p8j9DBog" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="Tc_4yqox6BJlkWAuw7C8UJvEQ_10_11">9,678</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Subtotal</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="Tc_Rbf4nP5DzE-NoaruQ0Ns3g_11_5">46,310</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="Tc_mYniypqX20isR9LYhPkA8A_11_8">11,434</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="Tc_MajFFv_-pUySY295_sLNzQ_11_11">34,876</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Unamortized intangible assets:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Tradenames</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_aYaI0ZySJkuVF2-yuAq33Q" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" scale="3" id="Tc_yDahptTlH0mZOMGMJtouXA_13_5">9,500</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_aYaI0ZySJkuVF2-yuAq33Q" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" scale="3" id="Tc_tnVz6UwjxES7GiJEfIS_mQ_13_11">9,500</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Patents pending</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_StMZ941_S0SJsGikyNLbog" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" scale="3" id="Tc_7l2hW9RDtEC0xHVzWgRtvQ_14_5">507</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_StMZ941_S0SJsGikyNLbog" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" scale="3" id="Tc_HX90SpvY_kuLPAfRTj4KIQ_14_11">507</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total intangible assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsGrossExcludingGoodwill" scale="3" id="Tc_YxF786uRu0elLsOz-zc2ZQ_15_5">56,317</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="Tc_2BpTsl4M4kGnkWG8LUzrLg_15_8">11,434</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="3" id="Tc_O-4OADdvdUqTKAJ1H6U9yg_15_11">44,883</ix:nonFraction></span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="display:inline-block;width:205.5pt;"></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:48.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At December&#160;31,&#160;2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Carrying</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Net</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Period</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amount</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Definite-lived intangible assets:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Patents</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_yv4OD8xh50uBTPZac1RnEg" format="ixt-sec:durwordsen" name="us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" id="Tc_Gq5aLy9tmEiqfK3yFYvgWg_6_2"><span style="font-family:'Arial','Helvetica','sans-serif';">12 years</span></ix:nonNumeric></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_yv4OD8xh50uBTPZac1RnEg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="Tc_3a5369y2JkiqYg5dkgmmng_6_5">1,018</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_yv4OD8xh50uBTPZac1RnEg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="Tc_QNnZ56RSu0-y3WFxfrnhpw_6_8">248</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_yv4OD8xh50uBTPZac1RnEg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="Tc_uaSM_Kh-dky_YhqylrFzQA_6_11">770</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Defensive intangible assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_D5R03d1RskGByrQebaDTFw" format="ixt-sec:durwordsen" name="us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" id="Tc_sk2FC1K_gk2jeuwq_LJOJA_7_2"><span style="font-family:'Arial','Helvetica','sans-serif';">1 year</span></ix:nonNumeric></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_D5R03d1RskGByrQebaDTFw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="Tc_npVJ5pQrbkS4gi_V-u4mHg_7_5">1,125</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_D5R03d1RskGByrQebaDTFw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="Tc_QEuV6xJThkCwnrX3RWva2A_7_8">920</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_D5R03d1RskGByrQebaDTFw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="Tc_zXsxxDgmnUm6651CaoC7ug_7_11">205</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Customer accounts</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerContractsMember_HPcRxgAafk6zHzL15wsixQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="Tc_hYOS0OXVJkeGXw0fC54x1A_8_5">125</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerContractsMember_HPcRxgAafk6zHzL15wsixQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="Tc_Z_s2oOP0QkSD0SzDkChnwg_8_8">125</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Customer relationships</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_dyycOI63hE-WyBUIQuzh6A" format="ixt-sec:durwordsen" name="us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" id="Tc_AyI1umkh3E6cjmvhQOHgUQ_9_2"><span style="font-family:'Arial','Helvetica','sans-serif';">11 years</span></ix:nonNumeric></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_dyycOI63hE-WyBUIQuzh6A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="Tc_H0CXNz2_n0KwQgWx_J2fzA_9_5">31,000</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_dyycOI63hE-WyBUIQuzh6A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="Tc_0o5blc68W0WNY2UMoj5R1Q_9_8">5,511</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_dyycOI63hE-WyBUIQuzh6A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="Tc_pislQRmFTkWh7NQLwfWm_w_9_11">25,489</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Developed technology</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_GOilbr9ot0SA7S3onMVWOA" format="ixt-sec:durwordsen" name="us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" id="Tc_u0G4lsltyEWC2lXwnNcl5A_10_2"><span style="font-family:'Arial','Helvetica','sans-serif';">9 years</span></ix:nonNumeric></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_GOilbr9ot0SA7S3onMVWOA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="Tc_H215k-hfNUivSwVdqL0BYw_10_5">13,000</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_GOilbr9ot0SA7S3onMVWOA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="Tc_8mfwKMQFNEqk3DMy3mbIHA_10_8">2,731</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_GOilbr9ot0SA7S3onMVWOA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="Tc_tQ-qSX8xDEOZL2HaEBy5KA_10_11">10,269</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Subtotal</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="Tc_yk4qG4QVFkG5rSkPqZmNng_11_5">46,268</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="Tc_CtDu9N1xYECeTkwWAF7ptA_11_8">9,535</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="Tc_Vn8kY6DOsEq_nvPTiv-hrA_11_11">36,733</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Unamortized intangible assets:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Tradenames</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_OpNZmYCr3ku6nMyPAfJBMg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" scale="3" id="Tc_5zMDZe58CUWn_Vzcrka0ew_13_5">9,500</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_OpNZmYCr3ku6nMyPAfJBMg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" scale="3" id="Tc_XrZAbSzj6kuGzcOjaJGOlA_13_11">9,500</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Patents pending</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_fBGrTaNO3kG4sW8rUuuf1w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" scale="3" id="Tc_aRU2goz2f0KgX8WgzhUicg_14_5">491</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_fBGrTaNO3kG4sW8rUuuf1w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" scale="3" id="Tc_SYloMWoqzk66cfXTw5ZK6g_14_11">491</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total intangible assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsGrossExcludingGoodwill" scale="3" id="Tc_djX7gjJJhU6Ove-eCZICFg_15_5">56,259</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="Tc_ERnPDpQHREWK0vM02o49LQ_15_8">9,535</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="3" id="Tc_tsrdB_VwbUKw59WTRzb4dw_15_11">46,724</ix:nonFraction></span></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Amortization expense was </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="6" id="Narr_SDpGlqs4YUK76eSW5mfy6Q"><ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="6" id="Narr_uev5KkiorEuNY81z37VPzA">1.0</ix:nonFraction></ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for each of the three months ended June 30, 2024 and 2023, and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="6" id="Narr_vQ5eyW9BUUOCANQeyiq1iA"><ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="6" id="Narr_g4RptqAJwUa7e8iraWJfOg">1.9</ix:nonFraction></ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for each of the six months ended June 30, 2024 and 2023, of which </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_ywsQSsjPeUWB7BS4q2DpMQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="6" id="Narr_fr-wUxguMES9d4v_075oUw"><ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_BZcJLooymkqAS-KE13NMYA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="6" id="Narr_EbcqINMD30CUGbfnLRdwxg">0.3</ix:nonFraction></ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million in each of the three months ended June 30, 2024 and 2023, and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_yePD9bKHCUaPvuf6XLfkIA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="6" id="Narr_3TDuTALxcE2Wmh1TIhFwKA"><ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_aw1g2Ytc8EaMEXZk7bgvuQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="6" id="Narr_G-9K5NREp0OYt3LSWemmsA">0.6</ix:nonFraction></ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million in each of the six months ended June 30, 2024 and 2023, were recorded in cost of sales revenue. Future amortization expenses are expected as follows:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" id="Tb_F4h1Xu_pE0yn41-eqUYY4A" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2024 (July 1 - December 31)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;&#160;&#160;&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" scale="3" id="Tc_RKCUAeymeUCB7oJwIast1w_2_3">1,899</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2025</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" scale="3" id="Tc_bzyZRjQk20qioCOZkR7HgQ_3_3">3,708</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2026</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" scale="3" id="Tc_v0tR_729XkCpWRDOdk9sYw_4_3">3,643</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2027</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" scale="3" id="Tc_eCKf_YMRVkK0AXEbYBUq6A_5_3">3,635</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2028</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" scale="3" id="Tc_AJ1zrBA5uUWW3QRL8zzgiA_6_3">3,632</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Thereafter</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="tcmd:FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" scale="3" id="Tc_vMCLWQcWBEa7A0D0wJAmJA_7_3">18,359</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="Tc_DrL3FNEnzkmKouyDuKUl2w_8_3">34,876</ix:nonFraction></span></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:14pt 0pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">In the third quarter of 2023, we performed our annual goodwill impairment test utilizing both the qualitative and quantitative approach described in FASB ASU No. 2021-03, &#8220;Intangibles&#8212;Goodwill and Other (Topic 350) &#8211; Accounting Alternative for Evaluating Triggering Events.&#8221; Based on the testing using the qualitative approach, it was determined that it was not more likely than not that the fair value of the reporting </span></p></ix:continuation></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">10</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:continuation id="Tb_l8_nfugUjk-JJoaZ5AddKw_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">unit was less than the carrying value. As a result, it was not deemed necessary to proceed to the quantitative test and </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_7_1_2023_To_9_30_2023_W_WVw8V8tUyv9jgci7uifw" decimals="-5" format="ixt-sec:numwordsen" name="us-gaap:AssetImpairmentCharges" scale="6" id="Narr_zW5Z2Qjg0k-ubxiCZigUSw">no</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> impairment was recognized.</span></p></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><a id="Tc_Q6jMHfORa0GvgyQU1MDyRA_1_0"></a><a id="Tc_B2u3PyjB_UiTSaueke-Y7g_1_2"></a><a id="Tc_Y36I5LroNUKGd2s0jIEL1g_1_5"></a><a id="Tc_FXFhzRTpOkagjVawLt6UeQ_2_0"></a><a id="Tc_kM0RCZih6Eiv1gOwCh16sA_2_2"></a><a id="Tc_2iAfWmWYUk-5tG3wsThQeQ_2_5"></a><a id="Tc_cv18ZUciQESp7wttS3U0pQ_3_0"></a><a id="Tc_yhBH4U1obkeqDIb9f9Uhvw_4_0"></a><a id="Tc_y9TZAuJYH0eiP1DB6KIuDQ_5_0"></a><a id="Tc_-4dsNi344kWt6Mg9U3gk_g_6_0"></a><a id="Tc_EsB6Jmpc6Eayar1_cWHE1A_7_0"></a><a id="Tc_rmAvcrowRk62bCR67Vfi2A_8_0"></a><a id="Tc_qNPfBWfqZk2U56n7fxQ4-Q_9_0"></a><a id="Tc_F7cFYMXtvEu-tfvQZpS2mA_9_2"></a><a id="Tc_RxES7Cbcu0-Vo2ez7ZUXTw_9_5"></a><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="tcmd:AccruedExpensesDisclosureCurrentTextBlock" id="Tb_A29J5glKxkSsa7GszbzjLg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 6. Accrued Expenses</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Accrued expenses consisted of the following:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="tcmd:ScheduleOfAccruedExpensesTableTextBlock" id="Tb_Cq1O-TLYa0i0QnnuBqN5EA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:34.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:30.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At June&#160;30,&#160;2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:30.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At December&#160;31,&#160;2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Warranty</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" scale="3" id="Tc__G6eYS7TFUGUlgbuTCuJpw_2_3">2,131</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" scale="3" id="Tc_Tzd1IHzDWUqz9QEpRrOf6A_2_6">2,357</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Legal and consulting</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedProfessionalFeesCurrent" scale="3" id="Tc_PiGiPtTd7UK50AaQ-WiDmg_3_3">1,161</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedProfessionalFeesCurrent" scale="3" id="Tc_tbSVUwCJ90qxP-Q_RjHYzQ_3_6">611</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">In-transit inventory</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="tcmd:InTransitInventoryAccruedExpense" scale="3" id="Tc_LA82A_zydEe_7aK4-AwHlQ_4_3">1,102</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="tcmd:InTransitInventoryAccruedExpense" scale="3" id="Tc_1uYrs-SM5EW4znC4szH1Sg_4_6">401</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Travel</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="tcmd:AccruedTravelAndEntertainmentCurrent" scale="3" id="Tc_ofz86MCIVE6VCRaifZA9ng_5_3">933</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="tcmd:AccruedTravelAndEntertainmentCurrent" scale="3" id="Tc_sN-6ZSlsV0KypnDlw4J-Jg_5_6">1,038</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Clinical studies</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="tcmd:AccruedClinicalStudiesExpensesCurrent" scale="3" id="Tc_1yU2riyyhUeBPZs19si3oQ_6_3">339</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="tcmd:AccruedClinicalStudiesExpensesCurrent" scale="3" id="Tc_u4s7A-l_l0yuK1r7xMy8KA_6_6">363</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales and use tax</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="tcmd:AccruedSalesAndUseTax" scale="3" id="Tc_l6xyYclvXUmkGz-rMTFNDA_7_3">108</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="tcmd:AccruedSalesAndUseTax" scale="3" id="Tc_jXglDshv90C9vHDPJiwANg_7_6">183</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Other</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherAccruedLiabilitiesCurrent" scale="3" id="Tc_UAEqVp4oLEij_wkizmmldw_8_3">928</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherAccruedLiabilitiesCurrent" scale="3" id="Tc_UQi73r5hokCiSt54S-mWRw_8_6">951</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedLiabilitiesCurrent" scale="3" id="Tc_U6shZSTQr0uGGqVRh4OqEg_9_3">6,702</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedLiabilitiesCurrent" scale="3" id="Tc_Crme5rOBqkaq6dUcb-MzTg_9_6">5,904</ix:nonFraction></span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p><a id="Tc_2AJDUJ7pFkumHOX7B_x20g_1_2"></a><a id="Tc_KXFDeNsgMUiP-dgapF4swg_1_8"></a><a id="Tc_KgkvKVX-bE-1a9ztYMdUGQ_2_2"></a><a id="Tc_znSKfbofh0-3OqRQgP3ebQ_2_8"></a><a id="Tc_9SWkVepiKkm51pclTwPtvg_3_0"></a><a id="Tc_uiKpXLM4UkedKJqbe_NVTg_3_2"></a><a id="Tc_8arI0fV8AEqKOZtoVM4nsw_3_5"></a><a id="Tc_sfJ9mWrdA0u-yaDg3omWfg_3_8"></a><a id="Tc_ReOoYij6NEiTW2TiY7-rOA_3_11"></a><a id="Tc_aayoHblC9ESJzomyA1ryfg_4_0"></a><a id="Tc_Z9l9GjxPyUadSH-y-PZ7gA_4_2"></a><a id="Tc_7ECI9vZjQkSoa9j9elfHVw_4_5"></a><a id="Tc_LkpBN98dz02Yurl29YqJiw_4_8"></a><a id="Tc_FPde9nxJpk62lGdlCJRFMw_4_11"></a><a id="Tc_NKwNP19bPUy0gKf3o1pR3g_5_0"></a><a id="Tc_7BHEOgkGb0-UTJP2PLhQ-Q_6_0"></a><a id="Tc_K5ufZC7Wg0eddXzwf8Eemw_7_0"></a><a id="Tc_pIj0iK2TDUO9F3PpILpLaA_7_2"></a><a id="Tc_B81SDU-S2USYCLA7Y_r_vA_7_5"></a><a id="Tc_UcKEibVt90W7J5fP7Pw8Kw_7_8"></a><a id="Tc_yojVnWRm7kqq2ddjXKpLIQ_7_11"></a><a id="Tc_6gIQnvf8-US94WqdcDnzFQ_9_0"></a><a id="Tc_Z95mraWg8kyL2wB2DS_IRg_9_2"></a><a id="Tc_MpCmaGokSUOl3YpICsrXhw_9_5"></a><a id="Tc_L7_15UCqME6PzS1XmkvKyw_9_8"></a><a id="Tc_xtgOPZEOvEKY5AFH2DM5uA_9_11"></a><a id="Tc_R3raa7SDtkiYAmdvqdvaOA_10_0"></a><a id="Tc_ZkTMVvAtKES1CmSbPdK0Ww_11_0"></a><a id="Tc_W2AixLqG60aQNH48XKEsPA_11_2"></a><a id="Tc__J7o_a4IeE-oVl1R0ko0pw_11_5"></a><a id="Tc_Hr8XK6yYeUOOQQYIMwXsaA_11_8"></a><a id="Tc_MyjyvK9Q3UeFt7qAsdSeCA_11_11"></a><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:ProductWarrantyDisclosureTextBlock" id="Tb_NFIWiTmVZES4qhJaenYMyg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note&#160;7. Warranty Reserves</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The activity in the warranty reserve during and as of the end of the reporting periods presented was as follows:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock" id="Tb_IjXpPsnvf067AFG4QGQnxQ" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended </b></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June&#160;30,&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June&#160;30,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Beginning balance</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_3_31_2024_s2vwRyEnHUaXSAoq3iPMfA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StandardProductWarrantyAccrual" scale="3" id="Tc_Qfl7lHLA3k2-HtyHwWBgaQ_4_3">3,836</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_3_31_2023_GzRMMUTuf06M6Ru_HEW-nQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StandardProductWarrantyAccrual" scale="3" id="Tc_LEjfIC6TOEOWXbAdlAznCQ_4_6">4,000</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StandardProductWarrantyAccrual" scale="3" id="Tc_2EL9N-fdTEO3gO8M564NDQ_4_9">4,038</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2022_8ruiuWr-P02VR3cPNU5Dgw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StandardProductWarrantyAccrual" scale="3" id="Tc_G9594s-npE-LdHsxwoq8Cg_4_12">4,212</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Warranty provision</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StandardProductWarrantyAccrualWarrantiesIssued" scale="3" id="Tc_CsCK5xyOlkiN2kCv1PSqlQ_5_3">902</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StandardProductWarrantyAccrualWarrantiesIssued" scale="3" id="Tc_BnEfaIiVAUeLJT8vuPUxDg_5_6">1,026</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StandardProductWarrantyAccrualWarrantiesIssued" scale="3" id="Tc_jHBcN4dMYEGQxdccN1kyaA_5_9">1,742</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StandardProductWarrantyAccrualWarrantiesIssued" scale="3" id="Tc_fMWyeSMRDU-Gkh3Wy2lAWQ_5_12">1,900</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Processed warranty claims</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StandardProductWarrantyAccrualPayments" scale="3" id="Tc_On7RnmuPm0u8w4o8V84wvQ_6_3">1,046</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StandardProductWarrantyAccrualPayments" scale="3" id="Tc_f0UEjZYJDUmREpL5Cf_Lgw_6_6">1,198</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StandardProductWarrantyAccrualPayments" scale="3" id="Tc_E0YwAd7RTUyBrFoNJR1HFg_6_9">2,088</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StandardProductWarrantyAccrualPayments" scale="3" id="Tc_OalAkCm3yUai0wpI0BthDw_6_12">2,284</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Ending balance</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StandardProductWarrantyAccrual" scale="3" id="Tc_jIAinrTvgEKADSHpdAoplg_7_3">3,692</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StandardProductWarrantyAccrual" scale="3" id="Tc_u1NndFFUaEuM5VWq7fUo2w_7_6">3,828</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StandardProductWarrantyAccrual" scale="3" id="Tc_TbiDYAl_Lkqx6XCwDTa5fA_7_9">3,692</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StandardProductWarrantyAccrual" scale="3" id="Tc_XB8kGTI_fkuM6v32vV7rog_7_12">3,828</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#ff0000;font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#ff0000;font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Accrued warranty reserve, current</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" scale="3" id="Tc_R8m5QmVuaUi3ztXenWOEvQ_9_3">2,131</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" scale="3" id="Tc_NAxXvEmHsEe9pDnW2ym_Ww_9_6">1,871</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" scale="3" id="Tc_Eud-EznC20Cn9Jh8JZTfrw_9_9">2,131</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" scale="3" id="Tc_sYSunMcWI0ynpBnGQ9GxjA_9_12">1,871</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Accrued warranty reserve, non-current</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrualNoncurrent" scale="3" id="Tc_myO1KigoskKiEuJggA-nZw_10_3">1,561</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrualNoncurrent" scale="3" id="Tc_79MeyVfJ6Um_sqfuKbL7gw_10_6">1,957</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrualNoncurrent" scale="3" id="Tc_Wb864p2adkKKoK134JocZw_10_9">1,561</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrualNoncurrent" scale="3" id="Tc_EkqAkqAI2kuPZe6102glOQ_10_12">1,957</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total accrued warranty reserve</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrual" scale="3" id="Tc_vIz7tNdr_0mDAkdJeDRlFA_11_3">3,692</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrual" scale="3" id="Tc_5vf12RWqZkOqda5xOEN8LQ_11_6">3,828</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrual" scale="3" id="Tc_z0V6eAn4v0e8XBDSQ6koTQ_11_9">3,692</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrual" scale="3" id="Tc_6guC5xO6g0KJ5egHdC9dfw_11_12">3,828</ix:nonFraction></span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></ix:nonNumeric></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">11</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:DebtDisclosureTextBlock" id="Tb_Dv6yBBs9Dk6qNEJd_-nm0A" continuedAt="Tb_Dv6yBBs9Dk6qNEJd_-nm0A_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 8. Credit Agreement </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:27pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On April 30, 2021, we entered into an Amended and Restated Credit Agreement (the &#8220;Restated Credit Agreement&#8221;) with the lenders from time to time party thereto, and Wells Fargo Bank, National Association, as Administrative Agent. The Restated Credit Agreement amended and restated in its entirety our prior credit agreement.</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:12pt;"> </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On September 8, 2021, we entered into a First Amendment Agreement (the &#8220;Amendment&#8221;), which amended the Restated Credit Agreement (as amended by the Amendment, the &#8220;Credit Agreement&#8221;) with the lenders from time to time party thereto and Wells Fargo Bank, National Association, as administrative agent. The Amendment, among other things, added a </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_9_8_2021_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_Ck326B7w_0Krb_CSgavUTw" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentFaceAmount" scale="6" id="Narr_6J_HEitCqEWrS92UjkhUJA">30.0</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million incremental term loan to the </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_9_8_2021_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_dQQxQiCes0iLhk0Kq3gSxg" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="Narr_RS78ja9Ki0GILtElB9msvw">25.0</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million revolving credit facility provided by the Restated Credit Agreement. The term loan is reflected on our condensed consolidated financial statements as a note payable. The Credit Agreement provides that, subject to satisfaction of certain conditions, we may increase the amount of the revolving loans available under the Credit Agreement and/or add one or more term loan facilities in an amount not to exceed </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_9_8_2021_To_9_8_2021_9hihkujZ3Ey1eqaoAkIhQg" decimals="-5" format="ixt:numdotdecimal" name="tcmd:LineOfCreditThresholdContingentIncreaseInBorrowingCapacity" scale="6" id="Narr_tur5kQkSVkiW2xnhjAPNcw">25.0</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million in the aggregate, such that the total aggregate principal amount of loans available under the Credit Agreement (including under the revolving credit facility) does not exceed </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_9_8_2021_Cj0wliWsa0a_TQenBtQr8Q" decimals="-5" format="ixt:numdotdecimal" name="tcmd:CreditAgreementTotalAggregatePrincipalAmount" scale="6" id="Narr_LV3SlGCwhEeCdX9_GRwkYA">80.0</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;">&#160;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On September 8, 2021, in connection with the closing of the AffloVest Acquisition, we borrowed the </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_9_8_2021_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_Ck326B7w_0Krb_CSgavUTw" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:LongTermDebt" scale="6" id="Narr_DJeyGXf9_U-TAzVtXSwbzQ">30.0</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million term loan and utilized that borrowing, together with a draw of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_9_8_2021_Cj0wliWsa0a_TQenBtQr8Q" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:LineOfCredit" scale="6" id="Narr_ouERLXMac0-nQnFEntUnNw">25.0</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million under the revolving credit facility and cash on hand, to fund the purchase price.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On February 22, 2022, we entered into a Second Amendment Agreement (the &#8220;Second Amendment&#8221;), which further amended the Credit Agreement. The Second Amendment modified the maximum leverage ratio, the minimum fixed charge coverage ratio and the minimum consolidated EBITDA covenants under the Credit Agreement, and added a minimum liquidity covenant, through the quarter ended June 30, 2023. The Second Amendment also increased the applicable margin for LIBOR rate loans under the Credit Agreement during the period commencing on the date of the Second Amendment and ending on the last day of the fiscal quarter ending June 30, 2023. Pursuant to the Second Amendment, we made a mandatory principal prepayment of the term loan of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_2_22_2022_To_2_22_2022_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_aOh09yICP0mKOlvyZ_LmxQ" decimals="-5" format="ixt:numdotdecimal" name="tcmd:DebtInstrumentPaymentOfMandatoryPrincipalPrepayment" scale="6" id="Narr_O94voJsoqky6UXsXJ23DoQ">3.0</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million on February 22, 2022.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On June 21, 2023, we entered into a Third Amendment Agreement (the &#8220;Third Amendment&#8221;) that replaced the interest rate benchmark under the Credit Agreement from LIBOR to the term Secured Overnight Financing Rate (&#8220;SOFR&#8221;). All tenors of term SOFR are subject to a credit spread adjustment of </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_6_21_2023_To_6_21_2023_j1HntEFxG0Kc_Q8vHPNODQ" decimals="4" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="Narr_GsdjdmVZk0GWKB-E82J-cQ">0.10</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> (&#8220;Adjusted Term SOFR&#8221;).</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Following the Third Amendment, the term loan and amounts drawn under the revolving credit facility bear interest, at our option, at a rate equal to (a) the highest of (i) the prime rate, (ii) the federal funds rate plus </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_6_21_2023_To_6_21_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_FederalFundsEffectiveSwapRateMember_LXTZhCgMxUycJXihNo5auw" decimals="4" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="Narr_B-Jkl5Or5EO6XKONZU7oNQ">0.50</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> and (iii) Adjusted Term SOFR for a one-month tenor plus </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_6_21_2023_To_6_21_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_mnKAkPDAg0iU_Cjx6Srz1g" decimals="2" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="Narr_BQ2mlYntzUSbOTXXSQWkQw">1</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> (the &#8220;Base Rate&#8221;) plus an applicable margin or (b) Adjusted Term SOFR for an interest period of one, three or six months, at our option, plus the applicable margin. The applicable margin is </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_6_21_2023_To_6_21_2023_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_YgEkMTt31EqSINuv-ZgQOA" decimals="4" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="Narr_hIWnjhbXtUa954SVaslmNA">0.75</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_6_21_2023_To_6_21_2023_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_kuB6wHaW0UyfxlfGfAlHWg" decimals="4" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="Narr_AVz_brjyf0G9mbD8lzqVXA">2.25</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> on loans bearing interest at the Base Rate and </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_6_21_2023_To_6_21_2023_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_PqaXVsMPiky2DLaLBJCwBA" decimals="4" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="Narr_rEfT2dSlgkS4AeExBUs1-w">1.75</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_6_21_2023_To_6_21_2023_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_PoIgEsN7SEKhdygmFyVIKg" decimals="4" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="Narr_-NI_w7jO0UOSm57z9jq7iA">3.25</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> on loans bearing interest at Adjusted Term SOFR, in each case depending on our consolidated total leverage ratio; except that, pursuant to the Second Amendment and the Third Amendment, during the period commencing on February 22, 2022 and ending on the last day of the fiscal quarter ending June 30, 2023, the applicable margin for LIBOR rate loans and Adjusted Term SOFR loans, as applicable, was </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_6_21_2023_To_6_21_2023_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_wZdntAYob0q0QJExjZbHIA" decimals="4" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="Narr_pr2L72OE8EmvOiABHiKhBA">3.50</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';">. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On August 1, 2023, we entered into a Fourth Amendment Agreement (the &#8220;Fourth Amendment&#8221;), which further amended the Credit Agreement. The Fourth Amendment, among other things, decreased the commitment fees payable under the revolving credit facility under the Credit Agreement such that the undrawn portions of the revolving credit facility are subject to an unused line fee at a rate per annum from </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_8_1_2023_To_8_1_2023_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_E53nVEuX30Gj6X7CEHcoFw" decimals="5" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" scale="-2" id="Narr_3J1Jh_zbYEqrsKi3R8CnPQ">0.125</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_8_1_2023_To_8_1_2023_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_I9fehpD4L062Ap1QjHh2jg" decimals="5" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" scale="-2" id="Narr_n8ibBwXupkW87gJT9rZRHQ">0.200</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';">, depending on our consolidated leverage ratio, and eliminated the language providing that the applicable margin for Adjusted Term SOFR loans was </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_8_1_2023_To_8_1_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_H6K4sXhMr0uC9TEZR3dfnw" decimals="4" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="Narr_-GF5IdwNk0aTzEuBHXF30g">3.50</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';">, such that the interest rates are in effect as set forth in the above paragraph. The Fourth Amendment also eliminated the liquidity financial covenant and modified the remaining financial covenants to reflect the termination of the temporary covenant relief period that was in place until June 30, 2023 pursuant to the Second Amendment, such that the financial covenants now include a maximum consolidated total leverage ratio covenant, a minimum consolidated EBITDA covenant and a minimum fixed charge coverage ratio covenant. In addition, the Fourth Amendment provided for an </span></p></ix:nonNumeric></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">12</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="Tc_4mvT-N_WvEitalZsBHEpRA_1_0"></a><a id="Tc_cXd9eWayXUGOkETFitoBJA_1_2"></a><a id="Tc_KzYbfdTPV0aGue-ZlL7rgg_2_0"></a><a id="Tc_C46qnpy87kaP2uCe0_wqGA_2_2"></a><a id="Tc_qkeeEW5nmEu5C1i7otf_0Q_3_0"></a><a id="Tc_TYHApG3kA02YhqeTEx9Hyg_4_0"></a><a id="Tc_IAtc4IZMKkugCTmBJH1TpQ_5_0"></a><a id="Tc_yRU0WoDjEE-x2FNxnviNcw_6_0"></a><a id="Tc_OOVcxT8Bbkacozaxk4gS9Q_7_0"></a><a id="Tc_2vRacsZaLkaQthYdtmT23w_8_0"></a><a id="Tc_0ig61UTUrEC-Cn_Ngr5Jxg_9_0"></a><a id="Tc_H33NDeMvtU6QDa5KqJkwfg_9_2"></a><ix:continuation id="Tb_Dv6yBBs9Dk6qNEJd_-nm0A_cont1"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">additional term loan in the amount of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_8_1_2023_To_8_1_2023_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_eRrazF1Whkq1dksOFvNTeg" decimals="-4" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceOfDebt" scale="6" id="Narr__NcLtYPcFUyZ3CpH3ICuOQ">8.25</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million, which we used for a paydown of the revolving credit facility. The Fourth Amendment also extended the maturity date of the term loans and revolving credit facility under the Credit Agreement from September 8, 2024, to August 1, 2026.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';background:#ffffff;">On December 21, 2023, we made a payment of </span><span style="font-family:'Arial','Helvetica','sans-serif';background:#ffffff;">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_12_21_2023_To_12_21_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_k0YKbRb_q0SepKmBcV1dwA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentPeriodicPayment" scale="6" id="Narr_4XalaccSakuk6OYq3G6VqA">16.8</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';background:#ffffff;">&#160;million to repay in full the outstanding balance on the revolving credit facility.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">As of June 30, 2024, we had outstanding borrowings of </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:LongTermDebt" scale="6" id="Narr_jkkmOY09qEGp6JJvAkHF-A">27.8</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> million under the Credit Agreement, comprised entirely of the term loan. At June 30, 2024,&#160;all outstanding borrowings were subject to interest at a rate calculated at Adjusted Term SOFR plus an applicable margin, for an interest rate of </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_8BiJD8Q_zEiWo40hjQqQtg" decimals="4" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="Narr_jkXaJO_CcES-ymlVrSs-xg">7.18</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">. The principal of the term loan is required to be repaid in </span><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_XFKczmT-jUCrLNWGfjcepA" name="us-gaap:DebtInstrumentFrequencyOfPeriodicPayment" id="Narr_uKT4t9_hp0ae8qbMOaoTNA"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">quarterly</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> installments of </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_XFKczmT-jUCrLNWGfjcepA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentPeriodicPayment" scale="0" id="Narr_eO-rOT4n-UmSOXeRGKSmHQ">750,000</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">. Maturities of the term loan for the next three years as of June 30, 2024, were as follows:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" id="Tb_MMwKZOZYzESxuects-C0gg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:66.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:29.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amount</b></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2024 (July 1 - December 31)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear" scale="3" id="Tc_L61MNMXTfU-mBjAljqj9CQ_2_3">1,500</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2025</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" scale="3" id="Tc_VPj68tbx3kylPTGYA9b_6w_3_3">3,000</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2026</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" scale="3" id="Tc_X7hoU6XKrkyvitHRZm-RLw_4_3">23,250</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentCarryingAmount" scale="3" id="Tc_KAaH2MSQuk2sAkcRnu5MQA_5_3">27,750</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Less: Deferred financing fees</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredFinanceCostsNet" scale="3" id="Tc_06a7DCi9pUqk6pE4iq0f7g_6_3">96</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net Note Payable</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LongTermDebt" scale="3" id="Tc_ip595T81Y0GtOfluWTbXtA_7_3">27,654</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Less: Current portion of note payable</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LongTermDebtCurrent" scale="3" id="Tc_lzXeY4uOj0u7f81wq85GVA_8_3">2,956</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Non-current portion of note payable</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LongTermDebtNoncurrent" scale="3" id="Tc_JfiSG9H1o0GXqjtKsLIWDw_9_3">24,698</ix:nonFraction></span></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our obligations under the Credit Agreement are secured by a security interest in substantially all of our and our subsidiary&#8217;s assets and are also guaranteed by our subsidiary. As of June 30, 2024, the Credit Agreement contained a number of restrictions and covenants, including that we maintain compliance with a maximum consolidated total leverage ratio, a minimum fixed charge coverage ratio and a minimum consolidated EBITDA covenant. As of June 30, 2024, we were in compliance with all covenants under the Credit Agreement.</span></p></ix:continuation><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="Tb_-zgJNiSAE02zD-l9ewvxpA" continuedAt="Tb_-zgJNiSAE02zD-l9ewvxpA_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note&#160;9. Commitments and Contingencies</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:10pt;text-align:justify;text-indent:-10pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Lease Obligations</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We lease property and equipment under operating leases, typically with terms greater than </span><ix:nonNumeric contextRef="As_Of_6_30_2024_srt_RangeAxis_srt_MinimumMember_4VKZ5hWU0E-xw8tULb1H6A" format="ixt-sec:durwordsen" name="us-gaap:LesseeOperatingLeaseTermOfContract" id="Narr_QFfl8KhIj0SG-wfb3dqWVA"><span style="font-family:'Arial','Helvetica','sans-serif';">12 months</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';">, and determine if an arrangement contains a lease at inception. In general, an arrangement contains a lease if there is an identified asset and we have the right to direct the use of and obtain substantially all of the economic benefit from the use of the identified asset. We record an operating lease liability at the present value of lease payments over the lease term on the commencement date. The related right of use (&#8220;ROU&#8221;) operating lease asset reflects rental escalation clauses, as well as renewal options and/or termination options. The exercise of lease renewal and/or termination options are at our discretion and are included in the determination of the lease term and lease payment obligations when it is deemed reasonably certain that the option will be exercised. When available, we use the rate implicit in the lease to discount lease payments to present value; however, certain leases do not provide a readily determinable implicit rate. Therefore, we must estimate our incremental borrowing rate to discount the lease payments based on information available at lease commencement.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We classify our leases as buildings, vehicles or computer and office equipment and do not separate lease and non-lease components of contracts for any of the aforementioned classifications. In accordance with applicable guidance, we do not record leases with terms that are less than one year on the Condensed Consolidated Balance Sheets.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">None of our lease agreements contain material restrictive covenants or residual value guarantees.</span></p></ix:nonNumeric></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">13</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:continuation id="Tb_-zgJNiSAE02zD-l9ewvxpA_cont1" continuedAt="Tb_-zgJNiSAE02zD-l9ewvxpA_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">Buildings</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We lease certain office and warehouse space at various locations in the United States where we provide services. These leases are typically greater than one year with fixed, escalating rents over the noncancelable terms and, therefore, ROU operating lease assets and operating lease liabilities are recorded on the Condensed Consolidated Balance Sheets, with rent expense recognized on a straight-line basis over the term of the lease. The remaining lease terms vary from approximately </span><span style="-sec-ix-hidden:Hidden_kHfwq-3Kx0yOTQftBwCcuA;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">one</span></span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><ix:nonNumeric contextRef="As_Of_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_2edHshgIxU-CWhd6nxQIGw" format="ixt-sec:durwordsen" name="us-gaap:LesseeOperatingLeaseTermOfContract" id="Narr_SymIzgTRTUawAe6AKgSU6Q"><span style="font-family:'Arial','Helvetica','sans-serif';">seven years</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';"> as of June 30, 2024.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We entered into a lease (&#8220;initial lease&#8221;) in October 2018, for approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_sqft_mTKkwbEw1UeRa9htF4TtgQ" contextRef="As_Of_10_31_2018_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tcmd_CorporateHeadQuarterInitialLeaseMember_xJJ6U3x0WEmAMwTINx8_-w" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AreaOfLand" scale="0" id="Narr_aMN82SbEnEma2WUws3WIAA">80,000</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> square feet of office space for our new corporate headquarters in Minneapolis, Minnesota. In December 2018, we amended the initial lease to add approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_sqft_mTKkwbEw1UeRa9htF4TtgQ" contextRef="As_Of_12_31_2018_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tcmd_CorporateHeadQuarterSecondLeaseMember_oRe1amb7dkiTsF0XB0N5sA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AreaOfLand" scale="0" id="Narr_t_dA5o67dE-Iy4OFW4TiNg">29,000</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> square feet of additional office space, which is accounted for as a separate lease (&#8220;second lease&#8221;) in accordance with ASU No. 2016-02, &#8220;Leases&#8221; (Topic 842) (&#8220;ASC 842&#8221;). In December 2019, we further amended the lease which extended the expiration date of the initial lease, extended the expiration date of and added approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_sqft_mTKkwbEw1UeRa9htF4TtgQ" contextRef="As_Of_12_31_2019_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tcmd_CorporateHeadQuarterSecondLeaseMember_vHpO4Pd9q0Gqf_jPdassSA" decimals="INF" format="ixt:numdotdecimal" name="tcmd:AdditionalOfficeSpaceAdded" scale="0" id="Narr_8NHgqGVCyk2n4jGcxezaRQ">4,000</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> square feet to the second lease, as well as added approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_sqft_mTKkwbEw1UeRa9htF4TtgQ" contextRef="As_Of_12_31_2019_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tcmd_CorporateHeadQuarterThirdLeaseMember_609kXUWprkmsMz87p600EA" decimals="INF" format="ixt:numdotdecimal" name="tcmd:AdditionalOfficeSpaceAdded" scale="0" id="Narr_Ooieurn60ki3FOlMjgU1kQ">37,000</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> square feet of additional office space, accounted for as a separate lease (&#8220;third lease&#8221;) in accordance with ASC 842. The portion of the space covered under the initial lease was placed in service in September 2019. The portion of the space covered under the second lease commenced in September 2020. Finally, the portion of the space covered under the third lease commenced in September 2021. The three portions were recognized as an operating lease and included in the ROU operating lease assets and operating lease liabilities on the Condensed Consolidated Balance Sheets.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">Computer and Office Equipment</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We also have operating lease agreements for certain computer and office equipment. The remaining lease terms as of June 30, 2024, ranged from less than </span><ix:nonNumeric contextRef="As_Of_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_EquipmentMember_rM3vcdramEuwLITsT_ygxA" format="ixt-sec:durwordsen" name="us-gaap:LesseeOperatingLeaseTermOfContract" id="Narr_UNrUmXVKn0SBTgaL2_SRyQ"><span style="font-family:'Arial','Helvetica','sans-serif';">one year</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';"> to approximately </span><ix:nonNumeric contextRef="As_Of_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_EquipmentMember_htm7g8S9PkSgqk49CCeQcg" format="ixt-sec:durwordsen" name="us-gaap:LesseeOperatingLeaseTermOfContract" id="Narr_BXomPptH7UGNPP4YrChFyg"><span style="font-family:'Arial','Helvetica','sans-serif';">four years</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';"> with fixed monthly payments that are included in the ROU operating lease assets and operating lease liabilities. The leases provide an option to purchase the related equipment at fair market value at the end of the lease. The leases will automatically </span><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_EquipmentMember_wdOC90gkNU-QpUIRQiTFsg" format="ixt:booleantrue" name="us-gaap:LesseeOperatingLeaseExistenceOfOptionToExtend" id="Narr_g7oa6la4V065JkzzBewHXQ"><span style="font-family:'Arial','Helvetica','sans-serif';">renew</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';"> as a month-to-month rental at the end of the lease if the equipment is not purchased or returned.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></ix:continuation></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">14</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_efe01800_4d8a_4168_97e2_ac7f2e8855b8"></a><a id="Tc_IPScYER69UCTOo8OEjnSNw_1_0"></a><a id="Tc_uCQbEszU50OMSfa9VCKwVA_1_2"></a><a id="Tc_kD6NhXeGJ0GXA2TO_XLNww_1_5"></a><a id="Tc_hKnctu91NEq1XTlFQshEUw_2_2"></a><a id="Tc_ji6ZagFGT0a_XM5j4W89CQ_2_5"></a><a id="Tc_G2haw-UGDUK_kMz0Y55QMQ_4_0"></a><a id="Tc_kJCQFpFP3U6Kt0VGvKjfbA_5_2"></a><a id="Tc_xOV5yeWW10m8eDzJ4ZFSKA_5_5"></a><a id="Tc_ff680fS0B0y3gGf5WsBW9A_7_0"></a><a id="Tc_QI0VctvUOUepxnHIiUHQeQ_7_2"></a><a id="Tc_tuqbnAX8s0qR4jqKkVBrOw_7_5"></a><a id="Tc_cZChkfkh_Ui3N84johJClw_9_0"></a><a id="Tc_ayAg5PZDQUmHUrxZb5FFVQ_10_0"></a><a id="Tc_h_3eXANlnE66epXnYBa7xA_10_3"></a><a id="Tc_26Mz3EnrukyhZQF2cadjNQ_10_6"></a><a id="Tc_FoTudx61ZUC83wKOe2QpOw_11_0"></a><a id="Tc_kVJDddwDsE6ZaLBdSbZ9TA_13_2"></a><a id="Tc_mA0cTYZYZk2y-NLmE6pD7Q_14_2"></a><a id="Tc_aPZ0HdHyOUOb6G9JENerVQ_14_5"></a><a id="Tc_mhKToia81U-3uXtYq6nehw_15_0"></a><a id="Tc_lLJp5IOXyU-v29XB9Eqa-A_16_0"></a><a id="Tc_NtzcYlV6BUi5CszIHrvThg_16_2"></a><a id="Tc__NzqM8RjVEavMKVtcEyAQQ_16_5"></a><a id="Tc_eoEw5V_YF0O3OUEW_a26Ig_17_0"></a><a id="Tc_Qq914G-W8keqR57u15gW7g_17_2"></a><a id="Tc_AAdV81FndEq-Xi9YwOHi_A_17_5"></a><a id="Tc_GlywG1ErfE6kOnCotgBkkw_17_6"></a><a id="Tc_s5KvsaizLUC3wVBvDUFMLQ_1_0"></a><a id="Tc_ZhzPDuezo0uQ_8gX3-qVSQ_2_0"></a><a id="Tc_wg8srXg1EU6xon9rATbswg_2_2"></a><a id="Tc_R5lJej1avkOvCAnmnonpmA_3_0"></a><a id="Tc_GDQf2WmiOECNynjX-RibHw_4_0"></a><a id="Tc_pNI3uBkM-kCfZvNsw6xrrw_5_0"></a><a id="Tc_UPjFbiUfC06Fq9T_QXFzfQ_6_0"></a><a id="Tc__j8hLm3Il0OsHHO5iODuiQ_7_0"></a><a id="Tc_9RuQ6n-I1kO0c-WQe38qmA_8_0"></a><a id="Tc_9X4KMyR2mk2ULz0VEyqTgQ_9_0"></a><a id="Tc_vEjKDPZA0UyfUkvW0EoNLw_10_0"></a><a id="Tc_epdmvgB_TUSi3MMUto_Kfw_11_0"></a><a id="Tc_b_c25yXOL02E3SeIDKWriQ_12_0"></a><a id="Tc_6aoEvJQFFkCoaZi3sUIiAQ_12_2"></a><ix:continuation id="Tb_-zgJNiSAE02zD-l9ewvxpA_cont2" continuedAt="Tb_-zgJNiSAE02zD-l9ewvxpA_cont3"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Lease Position, Undiscounted Cash Flow and Supplemental Information</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The table below presents information related to our ROU operating lease assets and operating lease liabilities that we have recorded:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="tcmd:AssetsAndLiabilitiesLesseeTableTextBlock" id="Tb_DTGUEBArZkSAaNuJvJZYaw" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:17.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At June&#160;30,&#160;2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:21.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At December&#160;31,&#160;2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="-sec-ix-hidden:Hidden_XGg9ZJfBzkKoHvrqqrYL-A;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">Right of use operating lease assets</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="Tc_NTtmYkV9HUmj9XDZvcP1oQ_2_3">17,828</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="Tc_TbRIjDdjxEOr9ENq5D9srg_2_6">19,128</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Operating lease liabilities:</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="-sec-ix-hidden:Hidden_RYmMhvoXpkm2HlfUhjWQpw;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">Current</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="Tc_408J4uIEyE-Q9Eu_38Nulw_5_3">2,799</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="Tc_jz0wPCHGKkCO_-QJtbne8w_5_6">2,807</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="-sec-ix-hidden:Hidden_OCBgoeuof0yCuc0I2N4Lzw;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">Non-current</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3" id="Tc_KLctc0TVhEy8KLVcG1Wphg_6_3">17,142</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3" id="Tc_8lzSzVK71kyB_7uul11uaA_6_6">18,436</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiability" scale="3" id="Tc_a3hyGKOmJ06Hv6gCAl2pfQ_7_3">19,941</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiability" scale="3" id="Tc_TSXdPwxNtUOusfNP5rtg7Q_7_6">21,243</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;"><span style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Operating leases: </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Weighted average remaining lease term</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><ix:nonNumeric contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" format="ixt-sec:duryear" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="Narr_4gb1d1YUhUGbVyvXLj0QOg"><span style="font-family:'Arial','Helvetica','sans-serif';">6.3</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';"> years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><ix:nonNumeric contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" format="ixt-sec:duryear" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="Narr_3tAEGF_o9ECEQhk2nxkjgQ"><span style="font-family:'Arial','Helvetica','sans-serif';">6.7</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';"> years</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Weighted average discount rate</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="Tc_kSt3uGAaVkqPXxSDM8CilQ_11_3">4.3</ix:nonFraction>%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg" decimals="3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="Tc_fYypH8H5dU6uH3cgM6wpPw_11_6">4.3</ix:nonFraction>%</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;vertical-align:top;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:41.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;width:17.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;width:21.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Supplemental cash flow information for our operating leases:</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cash paid for operating lease liabilities</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeasePayments" scale="3" id="Tc_1B7c0rGBm0-mHlG5k3jbdQ_16_3">1,743</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeasePayments" scale="3" id="Tc_vGP7Am29oEOMULBzUvZOvA_16_6">1,710</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Non-cash right of use assets obtained in exchange for new operating lease obligations</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" scale="3" id="Tc_LLgZyra_u0Cyxuid7s441A_17_3">3</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The table below reconciles the undiscounted cash flows for the periods presented to the operating lease liabilities recorded on the Condensed Consolidated Balance Sheet for the periods presented:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:OperatingLeaseLeaseIncomeTableTextBlock" id="Tb_iyvhHn_qfEqyWja2bSKGEw" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2024 (July 1 - December 31)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">  </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" scale="3" id="Tc_mzzw155oVEWa8kC1JRJ5iQ_2_3">1,791</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2025</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" scale="3" id="Tc_lKFYoEKHhUOffoKIQd9LBQ_3_3">3,645</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2026</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" scale="3" id="Tc_ylGnu_ueREu8_AQp2FohJA_4_3">3,716</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2027</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" scale="3" id="Tc_QoEGMNIRVUW2YVcPF17EuA_5_3">3,210</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2028</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" scale="3" id="Tc_Fz1VxCHptkO1QEMcseTydw_6_3">3,185</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Thereafter</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="tcmd:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" scale="3" id="Tc_mBGchbemZEGr0ezYFwPbbQ_7_3">6,943</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total minimum lease payments</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" scale="3" id="Tc_JUSCKD7a5E2uehU3qbqqiQ_8_3">22,490</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Less: Amount of lease payments representing interest</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" scale="3" id="Tc_7090ujHTF0imP2iIGB9kUA_9_3">2,549</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Present value of future minimum lease payments</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiability" scale="3" id="Tc_hWdSA2hkSk6khgo_m_szzg_10_3">19,941</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Less: Current obligations under operating lease liabilities</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="Tc_K5XVfrWuiUqPHR0g5HPN2g_11_3">2,799</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Non-current obligations under operating lease liabilities</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3" id="Tc_nJKWKm2S8EaJK0ZJJApkTQ_12_3">17,142</ix:nonFraction></span></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Operating lease costs were </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense" scale="6" id="Narr_k_IvjkXr00aAoVnYqwKjkA"><ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense" scale="6" id="Narr_7GPuHWJxTkeTOKOEq0R0jQ">0.9</ix:nonFraction></ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for each of the three months ended June 30, 2024 and 2023. Operating lease costs were </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense" scale="6" id="Narr_4QyC8mS5Gk-o2ZnA0Bdf6Q"><ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense" scale="6" id="Narr_TTPcbmTXJ0Wooqzf5yTGEw">1.8</ix:nonFraction></ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for each of the six months ended June 30, 2024 and 2023. &#160;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;padding-left:10.1pt;text-align:justify;text-indent:-10.1pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Major Vendors</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We had purchases from </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g" contextRef="As_Of_6_30_2024_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_q93ziSPyYkK8KDsTbE3dTA" decimals="INF" format="ixt-sec:numwordsen" name="tcmd:NumberOfVendors" scale="0" id="Narr_ZUbYcG--uEqPk1E6lpOLHg">one</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> vendor that accounted for </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_dBewljXhJECxvJt1x7cYQw" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="Narr_vn3GzWYQRUO0MbHMNoRuIg">17</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of our total purchases for the three months ended June 30, 2024, and purchases from </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g" contextRef="As_Of_6_30_2024_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_q93ziSPyYkK8KDsTbE3dTA" decimals="INF" format="ixt-sec:numwordsen" name="tcmd:NumberOfVendors" scale="0" id="Narr_DYPGnf312E2Q9-MRqSnFPg">one</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> vendor that accounted for </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_QflaMpPnkUONvmHfNuQCTQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="Narr_Hg3lQf3-00Gzt8uUkIuzew">20</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of our total purchases for the six months ended June 30, 2024. We had purchases from </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g" contextRef="As_Of_6_30_2023_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorTwoMember_Zk-3qdQ8LE-wnmIOQpdbDw" decimals="INF" format="ixt-sec:numwordsen" name="tcmd:NumberOfVendors" scale="0" id="Narr_EMtiAKBsn0CeX0ypImmKRg">two</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> vendors that accounted for </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorTwoMember_GkfxBxGEVUut5MpmfyrRDA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="Narr_-OZj-imWKkqQwDGFg0Qq6w">30</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of our total purchases for the three months ended June 30, 2023, and purchases from </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g" contextRef="As_Of_6_30_2023_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_NYbVUZ0gBEaUkVWcQUGNPQ" decimals="INF" format="ixt-sec:numwordsen" name="tcmd:NumberOfVendors" scale="0" id="Narr_rq94cR27wk2h51WQhFIQ7g">one</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> vendor that accounted for </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_9Pm2ilF9M0mdgNadpPa8EA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="Narr_-2BKN1GDcUG20F3Zw_La6w">24</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of our total purchases for the six months ended June 30, 2023. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;padding-left:10.1pt;text-align:justify;text-indent:-10.1pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Purchase Commitments</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We issued purchase orders prior to June 30, 2024, totaling </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:PurchaseObligationDueInNextTwelveMonths" scale="6" id="Narr_YbRosXtITEafjI4FUiJuOw">28.8</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for goods that we expect to receive within the next year.</span></p></ix:continuation></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">15</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_Hlk140049859"></a><a id="_Hlk171496834"></a><ix:continuation id="Tb_-zgJNiSAE02zD-l9ewvxpA_cont3"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Retirement Plan</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We maintain a 401(k) retirement plan for our employees in which eligible employees can contribute a percentage of their pre-tax compensation. We recorded an expense related to our discretionary contributions to the 401(k) plan of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_b2t1gr1hEkOEJlucH2wJQw" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" scale="6" id="Narr_2jAdimDlYEawc33nIeA3Zg">0.4</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_rnIYNziCZ0u25WElTrXIVw" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" scale="6" id="Narr_a-zPF-Sj30mZh-_Z_xwb_Q">0.3</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the three months ended June 30, 2024 and 2023, respectively, and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_LH9XYxL0EkuZW5wT_nzfpg" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" scale="6" id="Narr_iBWVO_iWiU2r5qGX274mQg">1.1</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_NttyosrxakeQDzyHbHGWeg" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" scale="6" id="Narr_e2DOJb09g0GLW6uLSVrc0g">0.7</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the six months ended June 30, 2024 and 2023, respectively.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Legal Proceedings</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">F</span><span style="font-family:'Arial','Helvetica','sans-serif';">rom time to time, we are subject to various claims and legal proceedings arising in the ordinary course of business. Regardless of outcome, litigation can have an adverse impact on us because of defense and settlement costs, diversion of management resources and other factors.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On May 24, 2022, a stockholder derivative lawsuit was filed in the United States District Court for the District of Minnesota, purportedly on behalf of the Company against certain of our present and former officers and directors and the Company (as a nominal defendant), captioned Jack Weaver v. Moen, et al., File No. 0:22-cv-01403-NEB-BRT (the &#8220;Weaver Lawsuit&#8221;). The Weaver Lawsuit generally arises out of the same subject matter as a previously settled securities class action captioned Brian Mart v. Tactile Sys. Tech., Inc., et al., File No. 0:20-cv-02074-NEB-BRT (D. Minn.) (the &#8220;Mart Lawsuit&#8221;), which alleged, inter alia, that we and </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g" contextRef="As_Of_5_24_2022_srt_LitigationCaseAxis_tcmd_WeaverLawsuitMember_oZZDdUJeUUKw3KK_HLckag" decimals="INF" format="ixt-sec:numwordsen" name="tcmd:NumberOfOfficerAndDirectors" scale="0" id="Narr_ogYw2Tk5GEyH6a_HzJUQqQ">eight</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> of our former officers and directors made materially false or misleading statements about our business, operational and compliance policies. The Weaver Lawsuit alleges the following claims under the Exchange Act and common law: (1) that the director defendants made materially false or misleading public statements in proxy statements in violation of Section 14(a) of the Exchange Act; (2) that the director defendants&#8217; stock and option awards should be rescinded under Section 29(b) of the Exchange Act; (3) that the officer defendants&#8217; employment contract compensation should be rescinded under Section 29(b) of the Exchange Act; (4) that certain officer defendants are liable for contribution arising out of any liability incurred in the Mart Lawsuit, under Sections 10(b) and 21D of the Exchange Act; (5) that the individual defendants breached their fiduciary duties; and (6) that the individual defendants were unjustly enriched. The Weaver Lawsuit seeks unspecified damages. In August 2022, the matter was transferred to the United States District Court for the District of Delaware by order granting the Parties Stipulation to Transfer. On February 10, 2023, we filed a motion to dismiss the action. The plaintiff filed an Amended Complaint on March 3, 2023. On March 31, 2023, we filed a motion to dismiss the Amended Complaint. On July 31, 2023, the plaintiff filed a Joint Notice of Preliminary Settlement indicating that the parties had reached a non-binding settlement-in-principal on most of the material terms that would resolve all claims between the parties and requested that the Court temporarily stay all deadlines, hearings, and conferences while the parties continued to finalize settlement</span><span style="font-family:'Arial','Helvetica','sans-serif';">. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On June 6, 2024, we entered into a Stipulation of Settlement in the Weaver Lawsuit. On June 7, 2024, the plaintiff filed an unopposed motion for preliminary approval of the settlement. &#160;On June 27, 2024, the Court entered an order granting the motion for preliminary approval of the settlement. &#160;The Court has scheduled a settlement hearing for August 28, 2024 to consider whether to grant final approval to the settlement. Pursuant to the settlement, we will adopt, implement and maintain certain corporate governance reforms and have agreed to pay approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_6_27_2024_To_6_27_2024_srt_LitigationCaseAxis_tcmd_WeaverLawsuitMember_4n-_hANt2UG_nH4WTTUyNA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:LitigationSettlementLoss" scale="6" id="Narr_OboOncIt4ESd5StwTqLRzA">0.5</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million in fees and expenses related to this lawsuit. The settlement does not constitute an admission of liability or wrongdoing by us or any of our current or former directors or officers.</span></p></ix:continuation><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock" id="Tb_zqhkfSWOSEC_tRBmCnDisw" continuedAt="Tb_zqhkfSWOSEC_tRBmCnDisw_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note&#160;10. Stockholders' Equity</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;padding-left:10.1pt;text-align:justify;text-indent:-10.1pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Stock-Based Compensation</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our 2016 Equity Incentive Plan (the &#8220;2016 Plan&#8221;) authorizes us to grant stock options, stock appreciation rights, restricted stock, stock units and other stock-based awards to employees, non-employee directors and certain consultants and advisors. There were up to </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_J6J7Egu7BE6tb3ShfRSqDA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" scale="0" id="Narr_n2EZwEkn5kONsXAiaunwrA">4,800,000</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares of our common stock initially reserved for issuance pursuant to the 2016 Plan. The 2016 Plan provides that the number of shares reserved and available for issuance under the 2016 Plan will automatically increase annually on January 1 of each calendar year, commencing in 2017 and ending on and including January 1, 2026, by an amount equal to the lesser of: (a) </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="As_Of_6_30_2024_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_J6J7Egu7BE6tb3ShfRSqDA" decimals="2" format="ixt:numdotdecimal" name="tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage" scale="-2" id="Narr_DOMBkyOLskagkZdQmmJrnw">5</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of the number of common shares of stock outstanding as of December 31 of the immediately preceding calendar year, or (b) </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_J6J7Egu7BE6tb3ShfRSqDA" decimals="INF" format="ixt:numdotdecimal" name="tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber" scale="0" id="Narr_stFZQw2xEUa9_RW48Ek5DA">2,500,000</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares; provided, however, that our Board of Directors may determine that any annual increase be a lesser number. In addition, all awards granted under our 2007 Omnibus </span></p></ix:nonNumeric></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">16</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="Tc_NHGv8PCvrEGdI6xbPU-54g_1_2"></a><a id="Tc_CY9ZBPyHt060dqXMz3zhgA_1_8"></a><a id="Tc_5UVpgjKZZEyLK8x8y1D3gQ_2_2"></a><a id="Tc_jMajXgcKVUSWazgiYDjumg_2_8"></a><a id="Tc_I5yT_LK2sU2Chk14mW5NLQ_3_0"></a><a id="Tc_cyc8d_BzxEKD1dRGWsiMnA_3_2"></a><a id="Tc_I3diW3rxTUOoY7pbHSCqlA_3_5"></a><a id="Tc_o45x66brnEuzCkodLGBGXw_3_8"></a><a id="Tc_jFOec6vL2kSfC_unbpQgNQ_3_11"></a><a id="Tc_RU0TTpntFkyHnZXFNTfxkg_4_0"></a><a id="Tc_69Z8Zaq_x0aOk1fjoUiTkQ_4_2"></a><a id="Tc_eotk0dIzyUqzmh6WvB65kw_4_5"></a><a id="Tc_Hv1mInYD00yUsoAFk2-fUg_4_8"></a><a id="Tc_255G49MBPE2PcE6b4f_XhA_4_11"></a><a id="Tc_s6fWgmWJ-kyE1tEtlPLjOA_5_0"></a><a id="Tc_5N1PqChjEUC-s22nKyFmjA_6_0"></a><a id="Tc_JYjXPCu4L0CBSzUzlfeCaA_7_0"></a><a id="Tc_vq2v6rT1IEu_syasG9wqsA_8_0"></a><a id="Tc_zczF8qncDUqV9Fgrbkisgg_8_2"></a><a id="Tc_u4ioRR_nT0amjunmScYN6g_8_5"></a><a id="Tc_DLY42US7gEexScNcYozXcA_8_8"></a><a id="Tc_NVCppGqU-0eXGINAemxGEg_8_11"></a><a id="_60fdbf6d_f4d4_495e_95c2_17ad2090d435"></a><a id="Tc_1Yqm2gdbAE-pe6FihhLILQ_1_4"></a><a id="Tc_FJ1QvrmxDU6DBrTgO5sjXQ_1_7"></a><a id="Tc_IlE8G8FGzUChqSmVS_yUfQ_2_4"></a><a id="Tc_GOTW9HWM8UecPOVwsT8cBw_2_7"></a><a id="Tc_QeOex1xC20y5om3gyDrnng_2_9"></a><a id="Tc_beoZtiOxmkSsoaTuSx3mNg_3_2"></a><a id="Tc_HTy7wR51tU27zoEOdbwZfQ_3_4"></a><a id="Tc_5R8yPYb3V0Wg4mc6sw3EXw_3_7"></a><a id="Tc_Ap5uC8w6tUOFv_KfA3OtTw_3_9"></a><a id="Tc_5ek9XVrzREyp6pSIx5cnfg_4_0"></a><a id="Tc_Z4Hdo66s3kKUZshMLtrSwQ_4_2"></a><a id="Tc_NLtVZR0q8UmqLN8oZiykBA_4_4"></a><a id="Tc_U8uObyx0HUm-V-ZSZxRrCQ_4_7"></a><a id="Tc_CgeOVcDIRUaLrPWoeGN1Dw_4_9"></a><a id="Tc_doNUAeVTl0OH-eWi6AzCpw_5_0"></a><a id="Tc_GDWpjKhf2k25AIHfBD-tbA_5_4"></a><a id="Tc_xKySYD3LOESXFAennGP2KQ_5_7"></a><a id="Tc_ARnjvup-PUOQb5fWsfS8cw_5_9"></a><a id="Tc_hg9pCKRE4EazegWMiKWv4g_6_0"></a><a id="Tc_pC2CKX_-ekWyHOVpstniAQ_6_4"></a><a id="Tc_4aYxUH3BVkaA1illd4bAfA_6_9"></a><a id="Tc_fge4pf3lbE2WfEqhKV83RQ_7_0"></a><a id="Tc_Wh7PPgIr-EKuq6X263wHJQ_7_4"></a><a id="Tc_eODUkI-CCE2Zi4pU_lqFGA_8_0"></a><a id="Tc_E-vmdi5R5k2LgZ4XHrJWwg_8_4"></a><a id="Tc_a0MfcXPMSEegDa6lLJuMXQ_8_7"></a><a id="Tc_WoFvpzsT2EqFwrJSDbORCA_8_9"></a><a id="Tc_u-kP8B-j-EqGzAowuZtm9Q_10_0"></a><a id="Tc_RPWGITaZa0OXiwxqnY12xg_10_4"></a><a id="Tc_b-qZSYL660OXtER9eTf7zQ_10_7"></a><a id="Tc_idyYFDx-Wk6UQTOjcXp2bg_10_9"></a><ix:continuation id="Tb_zqhkfSWOSEC_tRBmCnDisw_cont1" continuedAt="Tb_zqhkfSWOSEC_tRBmCnDisw_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Stock Plan and our 2003 Stock Option Plan that were outstanding when the 2016 Plan became effective and that are forfeited, expired, cancelled, settled for cash or otherwise not issued, will become available for issuance under the 2016 Plan. Pursuant to the automatic increase feature of the 2016 Plan, </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_1_1_2024_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_ofFDGQjvk0aI9xa2KbMZrQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" scale="0" id="Narr_b7uP3wphY0ybzs4ZiKtB5A">1,180,019</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares were added as available for issuance thereunder on January 1, 2024. Our Board of Directors exercised its prerogative to forego the automatic increase on January 1, 2023. As of June 30, 2024, </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_J6J7Egu7BE6tb3ShfRSqDA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockCapitalSharesReservedForFutureIssuance" scale="0" id="Narr_j48Jga6oJ0yQMWEuabFEug">6,615,454</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares were available for future grant pursuant to the 2016 Plan.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Upon adoption and approval of the 2016 Plan, all of our previous equity incentive compensation plans were terminated. However, existing awards under those plans continue to vest in accordance with the original vesting schedules and will expire at the end of their original terms.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We recorded stock-based compensation expense of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_6WRp1ld3YEmrwM_5zhswdQ">1.9</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_rSiyWk0jt0yNwa5V4q1ksg">1.8</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the three</span><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';">months ended June 30, 2024 and 2023, respectively and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_IzYmyOpn0U2QT9kufyctDg">3.9</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_1fVTebop00G8Ifp3mS3lAA">3.8</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the six months ended June 30, 2024 and 2023, respectively. This expense was allocated as follows:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" id="Tb_choPEt7FmUShshbQTo98Yw" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended </b></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June&#160;30,&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June&#160;30,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cost of revenue</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_BZcJLooymkqAS-KE13NMYA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_vDtVtOy2F0ugvKbvEM6fSQ_4_3">103</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_ywsQSsjPeUWB7BS4q2DpMQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_hO1jGyNIokGopMLRkdqXUg_4_6">121</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_aw1g2Ytc8EaMEXZk7bgvuQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_gjFKP2cuykmRX-cEzGOxIw_4_9">186</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_yePD9bKHCUaPvuf6XLfkIA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_GjqQBUqR20mO63FZaNqcKw_4_12">224</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales and marketing expenses</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember_5JKHubjwBEGtATw8ASNgfg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_ICqo3sFhHkelv648Wb40mA_5_3">606</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember_2JSrBU8CTU-sbg86Nyn9iA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc__7-B9nHDHUuOvLrCF2xnvg_5_6">810</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember_HxSjMzLYL0GA_jEuG3Mbgg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_krZmxQK5iUu6FgSr6j7A7A_5_9">1,344</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember_6ILm2QWg9UOZzuoI3haAKA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_pRLiu8obqUGlTsslxK3SuQ_5_12">1,562</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Research and development expenses</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember_-A12ocK6ikK5vZqQOstnMw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_-1B77-xUlUi5Aw7zAIwRig_6_3">48</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember_oNzNP8Z6IUK36Z0VublMuQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_fI5kcwIO5kS3vk5r-DVoKg_6_6">44</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember_LDeEsngrN0i6IXD9s9CV5w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_yTzH9vzoAkGb_kg6jO-Lnw_6_9">81</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember_Xt2SUTRSUkC214Je-lK66Q" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_88QzA6bTNUa5x4zrYcG0kA_6_12">93</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Reimbursement, general and administrative expenses</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_J1sCCrsMH0u6FnGeMI5R4A" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_8u2B8UcDokWAFF79wf-_Sg_7_3">1,103</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_InD_kSpVWkWpdxtCTAgllA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_P6WTGKT8AkO2QY9bXsmNqQ_7_6">833</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_lCzJt7RwjEm6bt9lS2nvZQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_dgjXYIMbeU2Ltm3XDcLXPA_7_9">2,288</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_PvP2spJEI0ixIMkN8EUjGQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_C-r4QdtgQk-xLHgXSPYpHg_7_12">1,952</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total stock-based compensation expense</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_CxwL9TXXnUC4A86OOKHVeA_8_3">1,860</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_LLjjTl6u50i0s17RxjuTfQ_8_6">1,808</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_3CCRAIOClEuts4wyi5_2Xw_8_9">3,899</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="Tc_vlOjv9sNk0qUPtpw4VoULw_8_12">3,831</ix:nonFraction></span></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Stock Options</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Stock options issued to participants other than non-employees typically vest over </span><span style="-sec-ix-hidden:Hidden_kLboFkrwmU241zeI964eiA;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">three</span></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> or </span><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_ghJx-QtBM0SdX9JhHhCA1g" format="ixt-sec:durwordsen" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Narr_EGA1WW7fDUW_dGisSEYPOw"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">four years</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> and typically have a contractual term of </span><span style="-sec-ix-hidden:Hidden_y4t_8y311Ue2o7Uk2kMnjA;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">seven</span></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> or </span><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_ghJx-QtBM0SdX9JhHhCA1g" format="ixt-sec:durwordsen" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" id="Narr_HBdYx-OVp0mWdnYQMd5TVg"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">ten years</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">. Stock-based compensation expense included in the Condensed Consolidated Statements of Operations for stock options was </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_cioTeAwoy0-99vBb2rKQAA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_CoawPisycUeyJCGjuTLCSQ">0.1</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_0sXoNSfb4k6UBc9GSOK9dQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_dlgtRuz7xUqjAGyXNaqjvA">0.2</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> million for the three months ended June 30, 2024 and 2023, respectively and </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_Q6e1DVLWkEuQVlxEq3Lgdg">0.2</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_AkhuhltJoEODpOAbZcPGfw" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_tNe_WqwuJUSZR0tmuKYxkQ">0.5</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> million for the six months ended June 30, 2024 and 2023, respectively. At June 30, 2024, there was approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_g40pvLmaQk6XkNT28sbcnA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" scale="6" id="Narr_tRLqZ-KEd0CDuC3G3nK0AA">0.1</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> million of total unrecognized pre-tax stock option expense under our equity compensation plans, which is expected to be recognized on a straight-line basis over a weighted-average period of </span><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w" format="ixt-sec:duryear" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="Narr_9DUsjbPYPk-fM4gvFaZYBQ"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">1.0</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> years.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our stock option activity for the six months ended June 30, 2024, was as follows:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="Tb_HaYAhXCTXEuDwm5thCoyKQ" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:-0.08757782%;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Aggregate</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Exercise&#160;Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Intrinsic</b></p></td></tr><tr><td style="vertical-align:bottom;width:37.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands except options and per share data)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Outstanding</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Per Share </b><sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Contractual Life</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Value </b><sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(2)</sup></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at December 31, 2023</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_WtVTo_t3pUifOnZF4OotMA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" id="Tc_nxKVefvIk0GOUz9SzgtDgg_5_2">429,960</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_WtVTo_t3pUifOnZF4OotMA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="Tc_IIhNCYebsEODVFLIbUSXQA_5_5">40.74</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_AkhuhltJoEODpOAbZcPGfw" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" id="Narr_I3hm7wTvt0y5nXR4-khhjg"><span style="font-family:'Arial','Helvetica','sans-serif';">3.8</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';"> years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_WtVTo_t3pUifOnZF4OotMA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" scale="3" id="Tc_Nf1TMxRzj0iaP7OZlo_4_A_5_10">223</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Exercised</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" id="Tc_eWhCNgrYFUyfSiyNiVW7jQ_6_2">1,153</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" id="Tc_qK5DWRS-dkuJtj4oiG1Vpw_6_5">1.35</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" scale="3" id="Tc_stJzXA82YEadW_GeQiOrFw_6_10">14</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cancelled/Expired</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" scale="0" id="Tc_yCp1e4-DZ0KnKgEaYOgokQ_7_2">12,995</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" scale="0" id="Tc_AR_mqAIXnEyLJgQmKTcljA_7_5">41.17</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at June 30, 2024</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_g40pvLmaQk6XkNT28sbcnA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" id="Tc_n6UYupU1pkKfWPUf_tdsrA_8_2">415,812</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_g40pvLmaQk6XkNT28sbcnA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="Tc_LF0Kr88UpkSSre9g57Z9Tw_8_5">40.83</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" id="Narr_CPGPAUUo2Ee-MQGllWmCfw"><span style="font-family:'Arial','Helvetica','sans-serif';">3.3</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';"> years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_g40pvLmaQk6XkNT28sbcnA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" scale="3" id="Tc_yAhF92afoUKsZCMIPmwcRA_8_10">125</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Options exercisable at June&#160;30,&#160;2024</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_g40pvLmaQk6XkNT28sbcnA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" scale="0" id="Tc_6qXNfD_pY0Gg-O3BazV9MA_10_2">392,239</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_g40pvLmaQk6XkNT28sbcnA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" id="Tc_IxfAGZbRGUaUKnWMjAx6yg_10_5">42.19</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" id="Narr_HNlSK7VhSEmfP_X6whcZ8g"><span style="font-family:'Arial','Helvetica','sans-serif';">3.2</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';"> years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_g40pvLmaQk6XkNT28sbcnA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" scale="3" id="Tc_4FQgtN_4jE-gGL5k31ARDA_10_10">65</ix:nonFraction></span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;text-decoration-line:none;text-transform:none;vertical-align:baseline;white-space:nowrap;width:18pt;padding:0pt 0pt 6pt 0pt;">(1)</td><td style="padding:0pt 0pt 6pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;">The exercise price of each option granted during the period shown was equal to the market price of the underlying stock on the date of grant.</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;text-decoration-line:none;text-transform:none;vertical-align:baseline;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;">(2)</td><td style="padding:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;">The aggregate intrinsic value of options exercised represents the difference between the exercise price of the option and the closing stock price of our common stock on the date of exercise. The aggregate intrinsic value of options outstanding represents the difference between the exercise price of the option and the closing stock price of our common stock on the last trading day of the period.</span></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Options exercisable of </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_BOcMZGF4UUGBZOdyCAwvQw" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" scale="0" id="Narr_P103jWO4qUWSlHry-93hxw">435,559</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> as of June 30, 2023, had a weighted-average exercise price of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="As_Of_6_30_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_BOcMZGF4UUGBZOdyCAwvQw" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" id="Narr_YAcuNXKUe0GFua-P0Y89Yw">44.67</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> per share.</span></p></ix:continuation></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">17</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_12a329ba_38b6_4c14_8c4b_6a0e666cc910"></a><a id="Tc_kvejpLQBAEu4ENVjpZ8mog_1_4"></a><a id="Tc_OCc3rIsqQE6iSG_CBYi9qA_2_4"></a><a id="Tc_6jQfTb-w3kiNR--tDVPQJQ_2_7"></a><a id="Tc_-1k7r6lu1k-jGq4-7fKzFQ_3_2"></a><a id="Tc_cc8md1f3TE--fNtaiSNLcQ_3_4"></a><a id="Tc_DaGzGF5lU0yYLdpA34jhCQ_3_7"></a><a id="Tc_xN4F4tWYhky-hP5T5psi9g_4_0"></a><a id="Tc_qV4JRku6jEan-IB52gGMKg_4_2"></a><a id="Tc_17y0_1Rht02HwVvvRxJAeg_4_4"></a><a id="Tc_NmGSt4wz6k6zPcj_8f1hgg_4_7"></a><a id="Tc_gslbxQHMnkOyvYo2Dp19bg_5_0"></a><a id="Tc_B5aTMSUPrUaWv24VxS5sAg_5_4"></a><a id="Tc_cd_QSPbVzk2ZrsijrSjAvg_5_7"></a><a id="Tc_aVmezrjabUGcPdzpKgjW_A_6_0"></a><a id="Tc_lsf63gTPzUmYs9tiaFMKtw_6_4"></a><a id="Tc_NZBXoXZfiE6ipp0Xugbypw_7_0"></a><a id="Tc_ThbjI5LGakeujNaBTjdayw_7_4"></a><a id="Tc_6X91kKnBj0Obmyg_I7TqXg_8_0"></a><a id="Tc_h6oWy92LJU-4kxD8YiosCQ_8_4"></a><a id="Tc_rSEBwqzc8k-PheDZH5rz2A_9_0"></a><a id="Tc_b8L9v9dxCECnHmVJrRcTAA_9_4"></a><a id="Tc_sHthh0mk7UejzkavgzAZ0g_9_7"></a><ix:continuation id="Tb_zqhkfSWOSEC_tRBmCnDisw_cont2" continuedAt="Tb_zqhkfSWOSEC_tRBmCnDisw_cont3"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Time-Based Restricted Stock Units</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We have granted time-based restricted stock units to certain participants under the 2016 Plan that are stock-settled with common shares. </span><span style="font-family:'Arial','Helvetica','sans-serif';">Time-based restricted stock units granted under the 2016 Plan vest over </span><span style="-sec-ix-hidden:Hidden_eZ3xB74RXU6NziO2vey1sA;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">one</span></span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_CRs_D8ro5kiqKnXVhcCEGg" format="ixt-sec:durwordsen" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Narr_Dey2rbcs5EawE1jZQkBPnA"><span style="font-family:'Arial','Helvetica','sans-serif';">three years</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';">. Stock-based compensation expense included in the Condensed Consolidated Statements of Operations for time-based restricted stock units was </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_iHQd9y1Ll0yZfYcvXClTQg" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_ZSUzl1dCt0ukEgg0htZCpg">1.5</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_nV2lVbHNuEqPk3TL3gUltA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_wdQ4hxaMxUm7iN0BP-4obw">1.3</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the three months ended June 30, 2024 and 2023, respectively, and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_TYp1y4Z_RU-Jx-dWHL3Giw">2.9</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_VhaGiA5jGkam-INZUFv_Kw" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_SU_N4qpwbUOprqamrGDgOg">2.6</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the six months ended June 30, 2024 and 2023, respectively. At June 30, 2024, there was approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X4jTL2lGQEi5OZH6-0_06w" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" scale="6" id="Narr_MWM9JrlNXEW72QTnXP6omA">8.3</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million of total unrecognized pre-tax compensation expense related to outstanding time-based restricted stock units that is expected to be recognized over a weighted-average period of </span><span style="-sec-ix-hidden:Hidden_qxZrAitPFUeRdDk6Iart9A;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">1.9</span></span><span style="font-family:'Arial','Helvetica','sans-serif';"> years.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our time-based restricted stock unit activity for the six months ended June 30, 2024, was as follows:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_Bvx8dB-taEaLeUjA4XBiOg" name="us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" id="Tb_AknT_A6VuUyOzPivwcrySg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average Grant</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Aggregate</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Units</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Date Fair Value</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Intrinsic</b></p></td></tr><tr><td style="vertical-align:bottom;width:46.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands except unit and per unit data)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Outstanding</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Per Unit</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">Value </b><sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at December 31, 2023</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_T6wjDTQPGEK1Gb201_e92w" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" scale="0" id="Tc_LlTEwpzGbUe0jZmFaKWq6g_5_2">589,142</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_T6wjDTQPGEK1Gb201_e92w" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="Tc_01qh_ddMt06U4JFOqKyvtA_5_5">16.35</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_T6wjDTQPGEK1Gb201_e92w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" scale="3" id="Tc_14afDnT6I0qF4lTNuEeHCA_5_8">8,425</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Granted</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" id="Tc_wEttDfa4DkOfAxLEg74XBA_6_2">464,145</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_IPsO8L1eIUSJueTNDup7DA_6_5">13.87</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Vested</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" scale="0" id="Tc_cB9JndgiuEqzWkugL3PWxg_7_2">224,149</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_onAc3n3CgEyxfusolli5AQ_7_5">18.02</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cancelled</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg" decimals="INF" format="ixt:numdotdecimal" name="tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod" scale="0" id="Tc_thDmSHCY7UW0z6EmPs8qpA_8_2">107,363</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg" decimals="2" format="ixt:numdotdecimal" name="tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue" scale="0" id="Tc_vkm5rJaSV028J1HycLtzXA_8_5">14.62</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at June 30, 2024</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X4jTL2lGQEi5OZH6-0_06w" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" scale="0" id="Tc_urlvWV9AgEyYJTpvMhiYCw_9_2">721,775</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X4jTL2lGQEi5OZH6-0_06w" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="Tc_aj5yhK5_wUeRLa43wCwTuA_9_5">14.50</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X4jTL2lGQEi5OZH6-0_06w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" scale="3" id="Tc_4k9AL9QTBU6AcyXprbUQ0A_9_8">8,618</ix:nonFraction></span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 6pt 0pt;">(1)</td><td style="padding:0pt 0pt 6pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;">The aggregate intrinsic value of restricted stock units outstanding was based on our closing stock price on the last trading day of the period. </span></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Performance-Based Restricted Stock Units</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We have granted performance-based restricted stock units (&#8220;PSUs&#8221;) to certain participants under the 2016 Plan. These PSUs have both performance-based and time-based vesting features. The PSUs granted in 2023 have </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyThreePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_vf2apqJLn0annc2r067_Uw" decimals="INF" format="ixt-sec:numwordsen" name="tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods" scale="0" id="Narr_PtweZofZtUGweKoNbkMrIg">three</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> separate performance periods, and </span><span style="-sec-ix-hidden:Hidden_uAKG2g7mZk--CJFl0zmvdg;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">one-third</span></span><span style="font-family:'Arial','Helvetica','sans-serif';"> of each grant will be earned if and to the extent performance goals based on revenue change and adjusted EBITDA margin are achieved in each of 2023 and 2024 (ranging from </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_2vjrEsRWU0O0frPl2AhISg" decimals="2" format="ixt:numdotdecimal" name="tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" scale="-2" id="Narr_eikiLPgfVU6_pOlkKIwQ5g">25</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_wLPbRsXsKUqKBQpel7Wk9g" decimals="2" format="ixt:numdotdecimal" name="tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" scale="-2" id="Narr_idlgEEhDU0Ktp8F80rOnig">175</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of target), and </span><span style="-sec-ix-hidden:Hidden_Dc9cTpTp0kahwn8Wwp10OQ;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">one-third</span></span><span style="font-family:'Arial','Helvetica','sans-serif';"> will be earned if and to the extent performance goals based on revenue change and adjusted EBITDA change are achieved in 2025 (ranging from </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_CdHOtZoixEyQRv5ItF8tFw" decimals="2" format="ixt:numdotdecimal" name="tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" scale="-2" id="Narr_t9ZvRH2up0iG3rstBxdVCg">25</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_CkRSapEG_EqdwTx_iFRKgA" decimals="2" format="ixt:numdotdecimal" name="tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" scale="-2" id="Narr_wAKMxnzcREKdZX83exVTPA">175</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of target). The PSUs granted in 2024 have </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg" decimals="INF" format="ixt-sec:numwordsen" name="tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods" scale="0" id="Narr_5n6hz4xKFEOTOSetI-4O0g">three</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> separate performance periods, and </span><span style="-sec-ix-hidden:Hidden_zYXFcnFJn0-ybR_mTIZHHw;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">one-third</span></span><span style="font-family:'Arial','Helvetica','sans-serif';"> of each grant will be earned if and to the extent performance goals based on revenue change and adjusted EBITDA margin are achieved in 2024 (ranging from </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFourPsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_pgC2_vFXqU2rv8yUNSbAeg" decimals="2" format="ixt:numdotdecimal" name="tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" scale="-2" id="Narr_xxZoUyPCRky5hjvwIJ0ZfA">25</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFourPsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_bj5dK8svok-fiQtw1nE6pQ" decimals="2" format="ixt:numdotdecimal" name="tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" scale="-2" id="Narr_s1AX1D1sD0yd0H5HFuwk1Q">175</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of target), </span><span style="-sec-ix-hidden:Hidden_FQbZztpU1EeZnyJ6p9PWGg;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">one-third</span></span><span style="font-family:'Arial','Helvetica','sans-serif';"> will be earned if and to the extent performance goals based on revenue change and adjusted EBITDA change are achieved in 2025 (ranging from </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_CdHOtZoixEyQRv5ItF8tFw" decimals="2" format="ixt:numdotdecimal" name="tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" scale="-2" id="Narr_3ZVxqUJYAEyDGssowJhhIg">25</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_CkRSapEG_EqdwTx_iFRKgA" decimals="2" format="ixt:numdotdecimal" name="tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" scale="-2" id="Narr_C9R7LO8RZ0yPzuESgo9smA">175</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of target), and </span><span style="-sec-ix-hidden:Hidden_4ZqkYWgRrk6GX2MYoeozQA;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">one-third</span></span><span style="font-family:'Arial','Helvetica','sans-serif';"> will be earned if and to the extent performance goals to be established are achieved in 2026. All earned and vested PSUs will be settled in shares of common stock.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Stock-based compensation expense recognized for PSUs was </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_ezS-WnceHUuULd2dRAw4SA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_Ux6VcN61V0WVSbC8g_ulUQ">0.2</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_c8suWCVS-0-8M1lSBp3YCg" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_8748FYI_ZUSy-QvusQodZg">0.1</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the three months ended </span><span style="font-family:'Arial','Helvetica','sans-serif';">June 30, 2024 and 2023, respectively, and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_QGuh-6z7RUKj4E-Glx7GoA">0.6</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_pGOubrJYkESRGzEtPzQ98A" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_VCG7A0Cle0mOFEl5CemjIQ">0.3</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the six months ended June 30, 2024 and 2023, respectively. </span><span style="font-family:'Arial','Helvetica','sans-serif';">At June 30, 2024, there was approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_5KM6x-YdRUW-jJYt7e6Uqg" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" scale="6" id="Narr_yAPW_3YF-Ei0Ef0JVucN8g">1.5</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million of total unrecognized pre-tax compensation expense related to outstanding PSUs that is expected to be recognized over a weighted average period of </span><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg" format="ixt-sec:duryear" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="Narr_p3GTptCaQkK7QF3X1W1npA"><span style="font-family:'Arial','Helvetica','sans-serif';">2.2</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';"> years.</span></p></ix:continuation></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">18</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_375f1798_e98a_4801_8ab8_bc0c36a3e32d"></a><a id="Tc_RtQtGsaP9UCwdyesMD64Tw_1_4"></a><a id="Tc_nIooRb3YV0-dlMn2Lsu5bQ_2_4"></a><a id="Tc_9CowuFk3_0Ov-XGzJ5wCBQ_2_7"></a><a id="Tc_IBRfSdH6-0mOHRRsQfo50g_3_2"></a><a id="Tc_ft1E9kjzL0qaErUoxe_SSw_3_4"></a><a id="Tc_vrANsWAYJEet5uNdhEH5mw_3_7"></a><a id="Tc_4z7-5TdDgkSabxr6s16vFg_4_0"></a><a id="Tc_UjSUu30Fr0ilvOv3KVBAww_4_2"></a><a id="Tc_0AANTfuq0ECge8o3fzoYLQ_4_4"></a><a id="Tc_rZC_EjuROkKG8BvbsaUIkA_4_7"></a><a id="Tc_MQIlvvyV-0WDRxBW7hWDAg_5_0"></a><a id="Tc_r3lccVAzEEGDmRq5HYhzRg_5_4"></a><a id="Tc_DJ0DFzuhREa2LAUoX6J7yQ_5_7"></a><a id="Tc_fhKU9lARsEuD1ONekCeWZQ_6_0"></a><a id="Tc_9vkPsDB5fkmWPAPCCE19qw_6_4"></a><a id="Tc_LWDig8Ks8kWEfSIfeTQQQg_7_0"></a><a id="Tc_CWQ4MoGPSUu-SCimsB-b3A_7_4"></a><a id="Tc_WGic_tr9z0uo05j3IzPqBw_8_0"></a><a id="Tc_YhFEm0ibWESO_BpGKXMy_A_8_4"></a><a id="Tc_qrERxooIoEO-1IJbGZdc7Q_9_0"></a><a id="Tc_AAb1m9yMeEmK5OzmjWMJjw_9_4"></a><a id="Tc_SJxaX87qhk2OjJ_BEz1i1A_9_7"></a><ix:continuation id="Tb_zqhkfSWOSEC_tRBmCnDisw_cont3"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our PSU activity for the six months ended June 30, 2024, was as follows:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_97xY_sdV2kKwp21GIEpGMA" name="us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" id="Tb_oDuz0559nUymeMnS2CJmTQ" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average Grant</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Aggregate</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">PSUs</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Date Fair Value</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Intrinsic</b></p></td></tr><tr><td style="vertical-align:bottom;width:44.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands except unit and per unit data)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Outstanding</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Per Unit</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">Value </b><sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at December 31, 2023</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X8xqXYhXF0uQc3XhVSeRLw" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" scale="0" id="Tc_gCLWP-wuUUm8nscnNr5bOQ_5_2">198,232</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X8xqXYhXF0uQc3XhVSeRLw" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="Tc_ohcdTPFUS06wlUOk0jZx4A_5_5">18.93</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X8xqXYhXF0uQc3XhVSeRLw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" scale="3" id="Tc_byKE1eYLxESKdNifnersVA_5_8">2,785</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Granted</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" id="Tc_8RfxE3gx4EqP1QQjfhc9qw_6_2">160,659</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_tPVtVWE9eE2jYbPcfqFRyg_6_5">13.88</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Vested</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" scale="0" id="Tc_RR4_r9Ftq0aFt4GVQ7pvQg_7_2">44,162</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_qjPciAegpEK7bk6q6LgWwg_7_5">27.31</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cancelled</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg" decimals="INF" format="ixt:numdotdecimal" name="tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod" scale="0" id="Tc_3inalapzbEyjo1uHBj35xw_8_2">104,913</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg" decimals="2" format="ixt:numdotdecimal" name="tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue" scale="0" id="Tc_K8SoRE_fyUS3vUSkHr97ZA_8_5">14.14</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at June 30, 2024</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_5KM6x-YdRUW-jJYt7e6Uqg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" scale="0" id="Tc_3IUcsngRiUaEpRs3A1Hmeg_9_2">209,816</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_5KM6x-YdRUW-jJYt7e6Uqg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="Tc_h1qxgrWlmE-qvNTsPby0gg_9_5">15.70</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_5KM6x-YdRUW-jJYt7e6Uqg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" scale="3" id="Tc_qYdjHjK8AEKazg0LQOeD1Q_9_8">2,505</ix:nonFraction></span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;">(1)</td><td style="padding:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;">The aggregate intrinsic value of PSUs outstanding was based on our closing stock price on the last trading day of the period. </span></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Employee Stock Purchase Plan</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our employee stock purchase plan (&#8220;ESPP&#8221;), which was approved by our Board of Directors on April 27, 2016, and by our stockholders on June 20, 2016, allows participating employees to purchase shares of our common stock at a discount through payroll deductions. The ESPP is available to all of our employees and employees of participating subsidiaries. Participating employees may purchase common stock, on a voluntary after-tax basis, at a price equal to </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_7fujnUGjr0OaOiKI4BNzOQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" scale="-2" id="Narr_EGGsy230a06kfBXByGr0eg">85</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of the lower of the closing market price per share of our common stock on the first or last trading day of each stock purchase period. The ESPP provides for </span><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_7fujnUGjr0OaOiKI4BNzOQ" format="ixt-sec:durwordsen" name="tcmd:EmployeeStockPurchasePlanOfferingPeriodsPeriod" id="Narr_l5CbCRTP40awj-1PWMvWHA"><span style="font-family:'Arial','Helvetica','sans-serif';">six-month</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';"> purchase periods, beginning on May 16 and November 16 of each calendar year. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">A total of </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_4_27_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_CxdJbOw2hkGAi09BZ8sXPg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockCapitalSharesReservedForFutureIssuance" scale="0" id="Narr_Bn0rUf69YUKDzU6-0gUrIw">1,600,000</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares of common stock was initially reserved for issuance under the ESPP. This share reserve will automatically be supplemented each January 1, commencing in 2017 and ending on and including January 1, 2026, by an amount equal to the least of (a) </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_7fujnUGjr0OaOiKI4BNzOQ" decimals="2" format="ixt:numdotdecimal" name="tcmd:IncrementalSharesToBeIssuedPercentage" scale="-2" id="Narr_HfnbrAl7G0y2G_m1yGd0kg">1</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of the shares of our common stock outstanding on the immediately preceding December 31, (b) </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_7fujnUGjr0OaOiKI4BNzOQ" decimals="INF" format="ixt:numdotdecimal" name="tcmd:IncrementalShareIncrease" scale="0" id="Narr_aJF97UmhoEGRtiW2oX9DSQ">500,000</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares or (c) such lesser amount as our Board of Directors may determine. Pursuant to the automatic increase feature of the ESPP, </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_1_1_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_5pYeZydTkUCyQNbFnxV3nQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockCapitalSharesReservedForFutureIssuance" scale="0" id="Narr_jq-r8kC-J02XGrBrJK7hQg">236,003</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares were added as available for issuance thereunder on January 1, 2024. Our Board of Directors exercised its prerogative to forego the automatic increase on January 1, 2023. As of June 30, 2024, </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_-lOENE2F9k6QTl4_q-DS5g" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockCapitalSharesReservedForFutureIssuance" scale="0" id="Narr_flludNddjUG87bZmTdH5PQ">1,497,964</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares were available for future issuance under the ESPP. We recognized stock-based compensation expense associated with the ESPP of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_s1Ty83wXCEi5WP97Hnx_9w" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_1UOfO3WSvEOHJ-zFhk2b4g"><ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_S6WOGUauiEeQCq3MrtpmwQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_QXtt7fSnBUm2kEo3BB7TQg">0.1</ix:nonFraction></ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for each of the three months ended June 30, 2024 and 2023, and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_7fujnUGjr0OaOiKI4BNzOQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_dmXmnCUeyUiGs8bn4eoyug">0.2</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_doHHH7OjnE2HPXOLgRoMBA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="6" id="Narr_X-4CX-tCGkqkv4rr0kko9g">0.3</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the six months ended June 30, 2024 and 2023, respectively.</span></p></ix:continuation><a id="_201c231d_bb2e_4807_ac04_7e26bb5a7309"></a><a id="Tc_n0JpaVDYzkebJ1cKoLDFCA_1_2"></a><a id="Tc_YUeVqevRWEmwZvbp3fCUQQ_1_8"></a><a id="Tc_mnbZhhYr0UyeDuwmMQKVcw_2_2"></a><a id="Tc_D6ytkXff7Eycccxp-OEgGw_2_8"></a><a id="Tc_twLHISJj9ESljL8FnCvgmQ_3_0"></a><a id="Tc_jlns3zLfFEq69Wh0emM4WQ_3_2"></a><a id="Tc__RhIwD1PeUe2B3HOFTAoog_3_5"></a><a id="Tc_QqfZDTKsKEK5kQ0N9mCnBQ_3_8"></a><a id="Tc_cRkbknK7akewat_zhh6XcQ_3_11"></a><a id="Tc_Om9GKpowsk6C4z0THAJP9A_4_0"></a><a id="Tc_NiVY0kTwzkKJvZxDOYcnxg_5_0"></a><a id="Tc_1ZWTpEQ2B0igOr4cuqz7kw_5_2"></a><a id="Tc_gRCcGMMQDEaYYDYTF8ocgQ_5_5"></a><a id="Tc_NY4oNkLLp0aFzP5N36rSnA_5_8"></a><a id="Tc_tTinr8sXcUyIBlbGrKsSxw_5_11"></a><a id="Tc_fqovILnwv0uMBzZnmfQh5Q_6_0"></a><a id="Tc_GCUN8TTkFUmXNFGmWmZ3nQ_7_0"></a><a id="Tc_0ynTd1UqOEmp0W3qbV-t_Q_7_2"></a><a id="Tc_DtKDxkyj8EqbzJ85wkMpuA_7_5"></a><a id="Tc_yPNMhgS66022pSYFJfYddg_7_8"></a><a id="Tc_YkwdM1hgyUae1Q90SdOnDg_7_11"></a><a id="Tc_o1DyKWBKv0mL_pPQMDQ63g_9_0"></a><a id="Tc_dGWByV2gFU2UX5Ee1ZhCjw_10_0"></a><a id="Tc_ZYlEkncRQ0WPDH4BUExMgA_11_0"></a><a id="Tc_iMYfOIvXsUmQMT3bubbzQw_12_0"></a><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:RevenueFromContractWithCustomerTextBlock" id="Tb_-fIyDV63Y0u1QIdbkcFyeg" continuedAt="Tb_-fIyDV63Y0u1QIdbkcFyeg_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 11. Revenue</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We derive our revenue from the sale and rental of our products to our customers in the United States. The following table presents our revenue, inclusive of sales and rental revenue, disaggregated by product line</span><span style="font-family:'Arial','Helvetica','sans-serif';">:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:DisaggregationOfRevenueTableTextBlock" id="Tb_3LZ9szsJzUGTd21_M0qRjQ" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Lymphedema products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember__aEYDxJTI0upXEUGPGIthQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_MdwT7Lh0PkGLNrVPzoRqwg_5_3">64,683</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember__3il7B6sHkqLFAXwRoP1cA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_ZgaQIRlazEmZaTwp_x2tYQ_5_6">59,999</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember_04wqXpjY3kqN11nx4kIJ-Q" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_gWuNH8eSb0uWyZ8pP-cmHw_5_9">116,996</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember_vmnWalIBSki-SkhrcDoGfg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_tHYLaFKhZUKHnEK6CCUkQg_5_12">109,751</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Airway clearance products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_Z8PQOK9oAkioGS7j0udc7Q" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_OgGDr-IyPkuPO_sIIMaPJQ_6_3">8,535</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_PmBIY95pjkOcuNBj1xpXXw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_-ttRuBImfk6IvstMftET5A_6_6">8,340</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_rjm7WIevX0uwcdeheszyGw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_jGQV9yXUOE2_uZPYpyZJ9Q_6_9">17,310</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_x8zVkG3hqU-tUogzIiMkmg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_188vvwUh90ebhgJ7aza5ZA_6_12">17,434</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_TlAD4D-58kG7Xe_-NkbhgA_7_3">73,218</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_lIjX1oGIHUCBMFjVsdru_g_7_6">68,339</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_pOagdS7q90CSNCHxNDHdcw_7_9">134,306</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_Y9_pjKt4_kqwDv5XlubMxg_7_12">127,185</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Percentage of total revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Lymphedema products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember__aEYDxJTI0upXEUGPGIthQ" decimals="2" format="ixt:numdotdecimal" name="tcmd:PercentageOfRevenue" scale="-2" id="Tc_ACkST7UBxEuAbSsdAOCYFw_10_3">88</ix:nonFraction>%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember__3il7B6sHkqLFAXwRoP1cA" decimals="2" format="ixt:numdotdecimal" name="tcmd:PercentageOfRevenue" scale="-2" id="Tc_w_jIBHUeZkGvzMIzAxVSeA_10_6">88</ix:nonFraction>%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember_04wqXpjY3kqN11nx4kIJ-Q" decimals="2" format="ixt:numdotdecimal" name="tcmd:PercentageOfRevenue" scale="-2" id="Tc_9V4pdHAnAU-I7aHRpkbkaA_10_9">87</ix:nonFraction>%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember_vmnWalIBSki-SkhrcDoGfg" decimals="2" format="ixt:numdotdecimal" name="tcmd:PercentageOfRevenue" scale="-2" id="Tc_9Fbv7WCR30S4CUMT1yZfzw_10_12">86</ix:nonFraction>%</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Airway clearance products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_Z8PQOK9oAkioGS7j0udc7Q" decimals="2" format="ixt:numdotdecimal" name="tcmd:PercentageOfRevenue" scale="-2" id="Tc_glKr8NLWP0OQVbelQVYMmw_11_3">12</ix:nonFraction>%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_PmBIY95pjkOcuNBj1xpXXw" decimals="2" format="ixt:numdotdecimal" name="tcmd:PercentageOfRevenue" scale="-2" id="Tc_N-UCYH012kuqq_evwDoB8w_11_6">12</ix:nonFraction>%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_rjm7WIevX0uwcdeheszyGw" decimals="2" format="ixt:numdotdecimal" name="tcmd:PercentageOfRevenue" scale="-2" id="Tc_ikr7jJxplUulP7GLR-YoyQ_11_9">13</ix:nonFraction>%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_x8zVkG3hqU-tUogzIiMkmg" decimals="2" format="ixt:numdotdecimal" name="tcmd:PercentageOfRevenue" scale="-2" id="Tc_JlvTccPk60KpAPyh9Y2w2A_11_12">14</ix:nonFraction>%</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="2" format="ixt:numdotdecimal" name="tcmd:PercentageOfRevenue" scale="-2" id="Tc_0tRrGpnxlkezMhfNfJAnnw_12_3">100</ix:nonFraction>%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="2" format="ixt:numdotdecimal" name="tcmd:PercentageOfRevenue" scale="-2" id="Tc_eUOdnwv4ZEqgoql21iKjig_12_6">100</ix:nonFraction>%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="2" format="ixt:numdotdecimal" name="tcmd:PercentageOfRevenue" scale="-2" id="Tc_BXqkIyMdWUeNIMcjDIlHAA_12_9">100</ix:nonFraction>%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="2" format="ixt:numdotdecimal" name="tcmd:PercentageOfRevenue" scale="-2" id="Tc_9fHCyiBwck-EDEcQdt2X8g_12_12">100</ix:nonFraction>%</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our revenue by channel, inclusive of sales and rental revenue, for the three and six months ended June 30, 2024 and 2023, are summarized in the following table:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="tcmd:ScheduleOfRevenueFromThirdPartyPayersTableTextBlock" id="Tb_lPdz7p0k40Gfo5VXsW69Ag" continuedAt="Tb_lPdz7p0k40Gfo5VXsW69Ag_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric></ix:nonNumeric></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">19</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="Tc_rsnuh9eSB0aiz4dUyn1eJw_1_2"></a><a id="Tc_JEWqoKsUi0KrPGMzY_4ITQ_1_8"></a><a id="Tc_DUI3zBLK30CXJuKM6c4xJw_2_2"></a><a id="Tc_xegxytxwuU-TMJKhZUAa6w_2_8"></a><a id="Tc_0T0mwoZisE2K7lBtE_IVCA_3_0"></a><a id="Tc_CxP_k273bEKJKdj_9hkBFQ_3_2"></a><a id="Tc_vEGt9gU61ESyoqruHz0z9g_3_5"></a><a id="Tc_aDCp7bNwFE2pdpuqx7DnyQ_3_8"></a><a id="Tc_VgaeaZgo_keKpaao6Gcc6A_3_11"></a><a id="Tc_EuphvgtNvUGiyT6RHRXzlg_4_0"></a><a id="Tc_e-t67_UHkUm1y6pYjNh6Nw_4_2"></a><a id="Tc_yYCRn0eIWEm-q3pPMiMFug_4_5"></a><a id="Tc_Ian2ST2DaUWJBls9YNcxCQ_4_8"></a><a id="Tc_wkwLtQ385EuhtaIBKe7rUQ_4_11"></a><a id="Tc_amhKYqJ4jUGxcaB9_wGzIA_5_0"></a><a id="Tc_6BzuxE0eDkmBjKvP4KwJvA_6_0"></a><a id="Tc_-CNlVr2ilkKdVLqyK_3Ubw_7_0"></a><a id="Tc_nYbtBIVedk2KpCo-ipPG_Q_8_0"></a><a id="Tc_CMI-yZFkDkOwrDtfdsA1AQ_8_2"></a><a id="Tc_ImJ4X-XFXUuyXvLStz6c-g_8_5"></a><a id="Tc_XQkmhenuKE-48_zKFA0ZvQ_8_8"></a><a id="Tc_bDXEl_wEMUqwAf53rr8_qg_8_11"></a><a id="Tc_ssPpRYXx_0CNVtOGCkrKDw_1_2"></a><a id="Tc_sQpgLTyIoE2SqlbwAQ_MZw_1_8"></a><a id="Tc_u4HW3fIhAUCAkiv8jvb9mQ_2_0"></a><a id="Tc_RsFKR2fjnUyCt6anuWVsoQ_2_2"></a><a id="Tc_mKCx1OSKBEKPT4O-Stfvpg_2_5"></a><a id="Tc_XjSDtANsoECISXKJxF2-eg_2_8"></a><a id="Tc_TtzH_pBRgEKjBoSZTRAJDQ_2_11"></a><a id="Tc_sWMcdBJqAUGb14Wn8asvoQ_3_0"></a><a id="Tc_uKWL9EZSi0K8EW5jgAgD4g_3_2"></a><a id="Tc_kog89PRNOUuygrGH3FS4oQ_3_5"></a><a id="Tc_zE4yx2m-BEaRLwX6FUYN5g_3_8"></a><a id="Tc_CKPZvHAXYEuC29xkyzYyEw_3_11"></a><a id="Tc_CL7TW2ilp0C41-EZY3PJjg_4_0"></a><a id="Tc_5TQwQmwu-UyzrpbdEJS9aw_5_0"></a><a id="Tc_piM8Q5JzCEW-ugvYUwPQ7Q_5_2"></a><a id="Tc_FhGCYvuSp0W28CySL1H3WA_5_5"></a><a id="Tc_L_Vvj2TaoUKurjFRb0_6sg_5_8"></a><a id="Tc_gZVWLEyi10qawMRZlJlfOA_5_11"></a><ix:continuation id="Tb_-fIyDV63Y0u1QIdbkcFyeg_cont1"><ix:continuation id="Tb_lPdz7p0k40Gfo5VXsW69Ag_cont1"><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:27.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:29.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:27.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:29.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:13.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:13.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Private insurers and other payers</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_PrivateInsurersMember_vq8q3f_1wEaulWVDbJ5wOA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_ufvGKH9H0keH0vqfqvBEBw_4_3">44,066</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_PrivateInsurersMember_DcWl6i8rcUm6MNN2Avn8qg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_xcFFdl7uOEmSFm0UFmWgGg_4_6">36,499</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_PrivateInsurersMember_UcgTVt2uw0y9LysoUAvOLA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_r2BvbqUc6E-0wbkt1ds0AA_4_9">75,343</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_PrivateInsurersMember_WGGJuSIalkSLzar76885Zw" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_5qYACSUn0kygohB3XW3mvQ_4_12">61,924</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Veterans Administration</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_VeteransAdministrationMember_dmfo4nRvy0WlW5eKfSP9ow" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_okMrKMhrhE6QBPADFlXDFg_5_3">8,071</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_VeteransAdministrationMember_RHtbhnUZukqb-2vU2jp5kA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_WjE-cdFh30CZvQFrxuJnGQ_5_6">7,121</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_VeteransAdministrationMember_RH6FbiMGOUSbvzKCcZKjvQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_kRHWjitKa0KazFSqRtqyGg_5_9">14,897</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_VeteransAdministrationMember_JZbV-5J9i0mfSTRA2TOLRg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_Wq8wBR4BTECEx7w2Xeq2kg_5_12">12,944</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Medicare</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_MedicareMember_obZpUPXbM0aO8cT_GDmFwg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_CYsNCoaPEUe7oIIwlIhlmA_6_3">12,546</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_MedicareMember_8ZsWA13QqEKqrwCpkevwkQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_G5p3UzL0UEW6kLg6xM6Wzw_6_6">16,379</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_MedicareMember_-b6LJm21NEOhzGm21yrLyA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_sMF2MyUKHkizXUdOP5sc7Q_6_9">26,756</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_MedicareMember_VFe3F2kiuEmHfZfBKs3dSg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_dnfneCXbq0K90UCdP1BW4g_6_12">34,883</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Durable medical equipment distributors</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_DurableMedicalEquipmentDistributorsMember_AEWBW7YCaEKs2kDUZ5uddA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_UeKBhRDy-kagtGrRCwaKEQ_7_3">8,535</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_DurableMedicalEquipmentDistributorsMember_9EnRkTwjgUiVB12kfJ9bQA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_mJftdDCi3USeQ-8LAEsHQQ_7_6">8,340</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_DurableMedicalEquipmentDistributorsMember_oHNR_kLzWE6-0CByym0rkg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_oD_g9YBxp0eHnx8FcQ4VqQ_7_9">17,310</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_DurableMedicalEquipmentDistributorsMember_oigy0xNv8kCsIsciRMorEA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_CwEAMQSWpU6ttI1vqKIu2Q_7_12">17,434</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_kQQl-X3keECjr9z1X7iDLw_8_3">73,218</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_X0xPuenaVUSlJdOLb-OKzw_8_6">68,339</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_3u7aFy9RRESsmsiwJNNLPw_8_9">134,306</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="Tc_YY5Mddnk4UqvO4MiFDJUwA_8_12">127,185</ix:nonFraction></span></p></td></tr></table></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Our rental revenue is derived from rent-to-purchase arrangements that typically range from </span><span style="-sec-ix-hidden:Hidden_284Rs177CEejvCyNOpuTsg;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">three</span></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> to </span><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_6OKFgrMhnE246Gi8WeLlgQ" format="ixt-sec:durwordsen" name="tcmd:RentToPurchaseArrangementsRentalPeriod" id="Narr_cnfnTUsXwEKokkkzYkZhNQ"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">ten months</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">. As title transfers to the patient, with whom we have the contract, upon the termination of the lease term and because collectability is probable, under ASC 842, these are recognized as sales-type leases. Each rental agreement contains two components, the controller and related garments, both of which are interdependent and recognized as one lease component. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The revenue and associated cost of revenue of sales-type leases are recognized on the lease commencement date and a net investment in leases is recorded on the Condensed Consolidated Balance Sheets. We bill the patients&#8217; insurance payers monthly over the duration of the rental term. We record the net investment in leases and recognize revenue upon commencement of the lease in the amount of the expected consideration to be received through the monthly payments. Similar to our sales revenue, the transaction price is impacted by multiple factors, including the terms and conditions contracted by third-party payers. As the rental contract resides with the patients, we have elected the portfolio approach, at the payer level, to determine the expected consideration, which considers the impact of early terminations. While the contract is with the patient, in certain circumstances, the third-party payer elects an initial rental period with an option to extend. We assess the likelihood of extending the lease at the onset of the lease to determine if the option is reasonably certain to be exercised. As the lease is short-term in nature, we anticipate collection of substantially all of the net investment within the first year of the lease agreement. Completion of these payments represents the fair market value of the equipment, and as such, interest income is not applicable. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Rental revenue for the three months ended June 30, 2024 and 2023, was primarily from private insurers. Sales-type lease revenue and the associated cost of revenue for the three and six months ended June 30, 2024 and 2023, was:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:SalesTypeLeaseLeaseIncomeTableTextBlock" id="Tb_Hlp0OGBP4UepRzglf87zbA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended June 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales-type lease revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SalesTypeLeaseRevenue" scale="3" id="Tc_Qon2ln1qf0i8NHF6TlHR6Q_3_3">8,951</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SalesTypeLeaseRevenue" scale="3" id="Tc_GOV63N18hEye23usyrlIDg_3_6">8,537</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SalesTypeLeaseRevenue" scale="3" id="Tc_9x3bPEdVf0WblvuNCPWyTQ_3_9">16,732</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SalesTypeLeaseRevenue" scale="3" id="Tc_O-hawFzgbEKpudNyqR4VQQ_3_12">14,592</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cost of sales-type lease revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsSoldSalesTypeLease" scale="3" id="Tc_6MuoTdfOTEyAkT8HkEqZNA_4_3">2,852</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsSoldSalesTypeLease" scale="3" id="Tc_ExLq8bykaE6hxqkFV8rNuA_4_6">3,175</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsSoldSalesTypeLease" scale="3" id="Tc_QBdwcRdNtUSRhSk4YLp-Tw_4_9">5,567</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsSoldSalesTypeLease" scale="3" id="Tc_i34JcmqX-0mFyNNw-456_w_4_12">5,911</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Gross profit</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SalesTypeLeaseSellingProfitLoss" scale="3" id="Tc_N_sHXvQqXUKKaANlI5X9Dw_5_3">6,099</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SalesTypeLeaseSellingProfitLoss" scale="3" id="Tc_SckTk6XHbEmN-yTx9cLwbw_5_6">5,362</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SalesTypeLeaseSellingProfitLoss" scale="3" id="Tc_Jz238wrpzka1IKaQ0HaAAg_5_9">11,165</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.84%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SalesTypeLeaseSellingProfitLoss" scale="3" id="Tc_sm37liAnfE-yzVsLntnnjQ_5_12">8,681</ix:nonFraction></span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:IncomeTaxDisclosureTextBlock" id="Tb_Nu3MYR7lf02oDowSLYi-6A" continuedAt="Tb_Nu3MYR7lf02oDowSLYi-6A_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 12. Income Taxes</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-top:2pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We record our interim provision for income taxes by applying our estimated annual effective tax rate to our year-to-date pre-tax income (loss) and adjusting for discrete tax items recorded in the period. Deferred income taxes result from temporary differences between the reporting of amounts for financial statement purposes and income tax purposes. These differences relate primarily to different methods used for income tax reporting purposes, including for depreciation and amortization, warranty and vacation accruals, and deductions related to allowances for doubtful accounts receivable and inventory reserves. Our provision for income taxes includes current federal and state income tax expense, as well as deferred federal and state income tax expense.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:14pt 0pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The effective tax rate for the three months ended June 30, 2024, was an expense of </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="3" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2" id="Narr_NfKzgy-vU0at0cdIl7XZkg">29.2</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';">, compared to an expense of </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="3" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2" id="Narr_VTmCzK_FXk2FQrGxICoTRg">108.3</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> for the three months ended June 30, 2023. The primary driver of the change in our effective tax rate was attributable to the fact that we did not have a full valuation allowance on our deferred tax assets for the current year period, while the prior year period reported a full valuation allowance. We recorded </span></p></ix:nonNumeric></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">20</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:continuation id="Tb_Nu3MYR7lf02oDowSLYi-6A_cont1"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">income tax expense of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="6" id="Narr_NDFewFvLDki4NHftqXK0eA">1.8</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="6" id="Narr_bks1dz-ERkW1h797bxL1nA">1.3</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the three&#160;months ended June 30, 2024&#160;and 2023, respectively.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The effective tax rate for the six months ended June 30, 2024, was an expense of </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="3" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2" id="Narr_yk5otZMpjkuDnJwppgkkhw">36.0</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';">, compared to a benefit of </span><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="3" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" sign="-" scale="-2" id="Narr_8YRQUI0O2Ue4Jz9M3pjPTw">44.5</ix:nonFraction>%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> for the six months ended June 30, 2023. The primary driver of the change in our effective tax rate was attributable to the fact that we did not have a full valuation allowance on our deferred tax assets for the current year period, while the prior year period reported a full valuation allowance. Additionally, in the prior year period we had year-to-date losses that we expected to realize, which drove a tax benefit. We recorded an income tax expense of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="6" id="Narr_Jecz_j8xnkqaibgstajbHA">1.2</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and an income tax benefit of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" sign="-" scale="6" id="Narr_W3bWGATYn0-Wy493I4DPTg">1.6</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the six&#160;months ended June 30, 2024&#160;and 2023, respectively.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:14pt 0pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We recognize the financial statement benefit of a tax position only after determining that the relevant tax authority is more-likely-than-not to sustain the position following an audit. For tax positions meeting the more-likely-than-not threshold, the amount recognized in the condensed consolidated financial statements is the largest benefit that has a greater than 50% likelihood of being realized upon ultimate settlement with the relevant tax authority.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The Company currently is not under examination in any jurisdictions.</span></p></ix:continuation><a id="Tc_itrHztHz0kC2-u01OAS3ZQ_1_2"></a><a id="Tc_HDPdN4REVUS9bXoPjDz7mg_1_8"></a><a id="Tc_eXJXFjoIv0ep8v2fJP1XNQ_2_2"></a><a id="Tc_A9MRk7Pxykm138-BrqrMhQ_2_8"></a><a id="Tc_KSW1xe2HSUaWWaWqWHdY3g_3_0"></a><a id="Tc_DgYsyH1II0ioEPEk-qgDsQ_3_2"></a><a id="Tc__pnj6dSeZkGIMMjdIArWsA_3_5"></a><a id="Tc_nQuKAkf7zkOcIK34NGLI7Q_3_8"></a><a id="Tc_AB8EoICxOEOCPOQtEhCQ5Q_3_11"></a><a id="Tc_wxHDdqraAEuatv4L8aFfcQ_4_0"></a><a id="Tc_C-K3uZM6BkuPjkqzs0fRTw_4_2"></a><a id="Tc_dgDjBp4MxkySi3zXUckkXQ_4_5"></a><a id="Tc_OG293gmL-EmJrAH8U_pGhg_4_8"></a><a id="Tc_vNUl6s5iB0qz0aReIFyW6w_4_11"></a><a id="Tc_XXrrrBJTUkWph0_ZYaf63g_5_0"></a><a id="Tc_jQ0uNrihXUCiTTqQe0ow7w_6_0"></a><a id="Tc_WV7OSYGPsUeRlkM-QIcXVQ_7_0"></a><a id="Tc_j9f8zpbi5U6MwvjPmgF2Sg_7_2"></a><a id="Tc_xBlDWYwL-EemltHPCX3Q4w_7_5"></a><a id="Tc_01vi1bIe3ES0sfJPhsUsGQ_7_8"></a><a id="Tc_Aq4uRABZ20SkHmWpPkl7FQ_7_11"></a><a id="Tc_AGZTE4ARXE6YtfkD-WP8Ew_8_0"></a><a id="Tc_ZY_jniI_NUmgw5nEri0Xkg_8_2"></a><a id="Tc_YSPRzxF5o0S8KPTUqcHaow_8_5"></a><a id="Tc_b9SS2W-h_UKu6GWpeXe4-Q_8_8"></a><a id="Tc_QdLEFWthHE2FNQfMvc4NJA_8_11"></a><a id="Tc_QOPjNs_XGk2OkjUqW9pHUw_1_2"></a><a id="Tc_FZwKgatGRE68rJmdQ23lTg_1_6"></a><a id="Tc_h0QaIuasLEO00huB70TGfQ_2_2"></a><a id="Tc_dMtaLKJE0EOBR-fabnsFnw_2_6"></a><a id="Tc_u1IXwdwadUe7hNbhlHey4A_3_2"></a><a id="Tc_Jsn4_tDqQk6bgjJBwAWQFA_3_4"></a><a id="Tc_slUO2wKtD0aDjhbql3oNGg_3_6"></a><a id="Tc_WjWqAxazNkenaVwFDJkPvg_3_8"></a><a id="Tc_JmXvDznL-ESGN1vA2mpYng_4_0"></a><a id="Tc_6JIB8l9BikutTCY2GmRp0w_5_0"></a><a id="Tc_G-ld0BxTK0ycbFW-l9CBSA_6_0"></a><a id="Tc_HNDs_bmDwUiF-uFyC5y2xA_6_2"></a><a id="Tc_mUoRSLhyH0a2PvveLygIpQ_7_0"></a><a id="Tc_Sq9YNJLfI0CC6HMUTnM9ng_7_2"></a><a id="Tc_0ZnRMfQfGUaLR_Jez1astg_7_6"></a><a id="Tc_cPOJJ1URK0eMjj2nW5j0_Q_8_0"></a><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:EarningsPerShareTextBlock" id="Tb__00nhSarN0GHPVckZq-7uw" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 13. Net Income (Loss) Per Share </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The following table sets forth the computation of our basic and diluted net income (loss) per share:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="Tb_kkMpO_2kBE-tgg1S4QeAZg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:middle;width:40.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands,&#160;except&#160;share and per share data)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:middle;width:40.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net income (loss)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="Tc_6r_CCIkjO0uhuiuD1vfqZg_4_3">4,298</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" sign="-" scale="3" id="Tc_CPikdlv1qkW8CjQ-WwlfyQ_4_6">100</ix:nonFraction>)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="Tc_RhXEaO4wkkyJ12zD86_08Q_4_9">2,089</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" sign="-" scale="3" id="Tc_imrglIVZvkyIcqDk5--IcQ_4_12">1,986</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Weighted-average shares outstanding</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" id="Tc_QylHmOD0o0eqHDJoU7shgw_5_3">23,873,379</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" id="Tc_WVKg0v2ZDE-3xgQu0DRtFg_5_6">23,352,530</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" id="Tc_GI_y_L7wMEe5Z76xkYvlXw_5_9">23,769,604</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" id="Tc_JW0evL7lYkiye9Eu7YHceg_5_12">22,323,856</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Weighted-average shares used to compute diluted net income (loss) per share</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" id="Tc_t-vSyAOjykKl6BL3Iw-MCg_6_3">24,099,047</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" id="Tc_ZaATXYr2Ekixn_Vm-xROIw_6_6">23,352,530</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" id="Tc_hSHgaIPQGEmjy5BG86YzVg_6_9">24,073,986</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" id="Tc_0WqAHqb-00SO5M0jCD9CRA_6_12">22,323,856</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net income (loss) per share - Basic</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:EarningsPerShareBasic" scale="0" id="Tc_fgYdfxVVmEmbakTydbwqMA_7_3">0.18</ix:nonFraction> </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:EarningsPerShareBasic" scale="0" id="Tc_NWyig_TVOkenzU4gD8zOiA_7_6">0.00</ix:nonFraction> </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="2" format="ixt:numdotdecimal" name="us-gaap:EarningsPerShareBasic" scale="0" id="Tc_qxhub0jJKEiuhQlDdY_KlQ_7_9">0.09</ix:nonFraction> </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(<ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:EarningsPerShareBasic" sign="-" scale="0" id="Tc_dcMNwx0BJ0mNyPsXBP5F3w_7_12">0.09</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net income (loss) per share - Diluted</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:EarningsPerShareDiluted" scale="0" id="Tc_h3nJrZhrR0GobcTqLDLKGQ_8_3">0.18</ix:nonFraction> </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:EarningsPerShareDiluted" scale="0" id="Tc_Az3TuT3dbEuLVSnOYzsZCA_8_6">0.00</ix:nonFraction> </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"><ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="2" format="ixt:numdotdecimal" name="us-gaap:EarningsPerShareDiluted" scale="0" id="Tc_TsgevngsREuOofSXTRgaEQ_8_9">0.09</ix:nonFraction> </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(<ix:nonFraction unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:EarningsPerShareDiluted" sign="-" scale="0" id="Tc_xTu-mP7jh0-6e8NLYAP7RQ_8_12">0.09</ix:nonFraction>)</span></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The following common stock equivalents were excluded from the computation of diluted net income (loss) per share for the periods presented because including them would have been anti-dilutive:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" id="Tb_xSzENqp3v0-yXMvFAFfO2g" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Restricted stock units</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_RestrictedStockUnitsRSUMember_M8bwANlicUyp4UMd2DYGnw" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc_f-TlpbWTvUWYC5SfINUSWw_4_2">449,056</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_RestrictedStockUnitsRSUMember_0fyztw3pZ0Ck4S5Rd4qPaQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc_WTyc64XO9E2PpSs0IW18dg_4_4">674,178</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_RestrictedStockUnitsRSUMember_S_7Y6L1IfkK9ZbacgJL_UQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc__AjncyfgoEqakcmFj-gwuQ_4_6">493,370</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_RestrictedStockUnitsRSUMember___2iBiea5UW-ySNG9DDcaw" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc_YI7fsVLIcESsu4bemYmQPg_4_8">674,178</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Common stock options</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_Kt6hW1pnpkKs8upy3ghAyw" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc_IUiMyDYQ70GbE7aG6-F-SA_5_2">381,187</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_MS_n4NomJ0y-fIQkng-UhA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc_1kch7S9GUECyymmN2BlPEg_5_4">526,047</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_t70kxCemN0GAg3UkgZAlEg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc_puR3t9jHG0StLJRr4azOFQ_5_6">387,298</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_kgt3EaukG0mwoUflL2zEEA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc_10P0s96iX0mzKxAvuUDB9w_5_8">526,047</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Performance stock units</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_PerformanceSharesMember_KBZZhhs7H06AdsnOifKtWg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc_AjCE9hk2u0uqqg3ZFTntHg_6_4">216,291</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_PerformanceSharesMember_6HAJIqeyEUaiQToYtAfdMA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc_oDtf9JpfN0GVEZtc0oMPRQ_6_6">166,457</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_PerformanceSharesMember_-DbZ9k1740Ca5jSHVP2-YA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc___Czokc-r0WIrpEUh_uakg_6_8">216,291</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Employee stock purchase plan</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_tcmd_EmployeeStockPurchasePlanMember_HFiQtM9gRESidV_6HnkPUQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc_Jw3eU9jPMUWaXxUE8qYHOw_7_4">59,509</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_tcmd_EmployeeStockPurchasePlanMember_HbQNm2DRHkyAH6uTjVt-JQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc_Qf8w480ppE2WE8wSt8jn-Q_7_8">71,253</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc_9rIPfxb3ZkKmkAR_Q5WaZQ_8_2">830,243</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc_rRedwejo_EiU6Vq4YCG7OA_8_4">1,476,025</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc_phl9cvoXyU6Tr-CLwCGA9w_8_6">1,047,125</ix:nonFraction></span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="Tc_5zWnvmv5kEm8CqkhN55UIg_8_8">1,487,769</ix:nonFraction></span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:FairValueDisclosuresTextBlock" id="Tb_TyFNOb_pdUGEfWGG9Fv_DQ" continuedAt="Tb_TyFNOb_pdUGEfWGG9Fv_DQ_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 14. Fair Value Measurements</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We determine the fair value of our assets and liabilities based on the exchange price that would be received for an asset or paid to transfer a liability (exit price) in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants on the measurement date. Valuation techniques used to measure fair value maximize the use of observable inputs and minimize the use of unobservable inputs. We use a fair value hierarchy with three levels of inputs, of which the first two are considered observable and the last unobservable, to measure fair value. The fair value hierarchy gives the highest priority to quoted prices in active markets for identical assets or liabilities (Level 1). The next highest priority is based on quoted prices for similar assets or liabilities in active markets or quoted prices for identical </span></p></ix:nonNumeric></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">21</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_cf460d4c_c29b_4d76_9b21_27652193761a"></a><a id="Tc_qnX5eYzmpUSUj1h2-BNQzw_1_0"></a><a id="Tc_Q-MmQwkDL0qyjerC7E3tNQ_2_0"></a><a id="Tc_Kh-nwt54bkeJiQkwIiMcug_2_2"></a><a id="Tc_q_BAvie260OrGxqK8xHBNg_3_0"></a><a id="Tc_VT2UZYzER06NFt8Wg7SAJw_4_0"></a><a id="Tc_f4rKHbVP1UWuvG8L7NfNRQ_5_0"></a><a id="Tc_FRnfY6LVgE6qLNLqBsghpw_5_2"></a><ix:continuation id="Tb_TyFNOb_pdUGEfWGG9Fv_DQ_cont1"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">or similar assets or liabilities in non-active markets or other observable inputs (Level 2). The lowest priority is given to unobservable inputs (Level 3).</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">As of June 30, 2024, our obligations under the AffloVest Acquisition earn-out arrangements had been paid in full. Prior to the determination of the actual amount of the earn-out, the earn-out liability was valued by employing a Monte Carlo Simulation model in a risk-neutral framework, which is a Level 3 input. The underlying simulated variable included recognized revenue. The recognized revenue volatility estimate was based on a study of historical asset volatility for a set of comparable public companies. The model included other assumptions including the market price of risk, which was calculated as the weighted average cost of capital less the long-term risk-free rate. The earn-out liability was adjusted to fair value at each reporting date until the end of the earn-out period, which was September 30, 2023. Changes in fair value were included in intangible asset amortization and earn-out expenses in our Condensed Consolidated Statements of Operations.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Changes in the earn-out liability measured at fair value using Level 3 inputs were as follows:</span></p><ix:nonNumeric contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w" name="us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" id="Tb_KgJHQ9lpbkm3YaOQ8xxz_A" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:69.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:23.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:69.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:26.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Earn-out liability at December 31, 2022</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:23.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_12_31_2022_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_PWbhMQM71UGkkKLgVkOZYg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationContingentConsiderationLiability" scale="3" id="Tc_iWClCGa5eEOy8x8RtEDMzA_2_3">13,050</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Payment on earn-out</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:23.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_3_31_2023_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_t0C16WESXk2zbF3G31Itxg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities" scale="3" id="Tc_EyS2c68NxkSTdi98UdZoHg_3_3">5,000</ix:nonFraction>)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Fair value adjustments</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.65%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:23.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_1_1_2023_To_3_31_2023_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_t0C16WESXk2zbF3G31Itxg" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" scale="3" id="Tc__kfUWcfgWkqlH2lA0yRk_w_4_3">1,230</ix:nonFraction></span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Earn-out liability at June 30, 2023</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:23.09%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> <ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="As_Of_3_31_2023_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_sFbAx9XpD0K-bSWi9be0RQ" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationContingentConsiderationLiability" scale="3" id="Tc_CRUrkcf_YEeP4jG9wNLT4g_5_3">9,280</ix:nonFraction></span></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On May 25, 2023, the Company paid </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_5_25_2023_To_5_25_2023_pzXlr5QgaUOGWFu4gYChbQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities" scale="6" id="Narr_9wJModvDc0uEODhDgdsXTA">5.0</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million, plus an imputed interest payment of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_5_25_2023_To_5_25_2023_pzXlr5QgaUOGWFu4gYChbQ" decimals="0" format="ixt:numdotdecimal" name="tcmd:BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment" scale="0" id="Narr_97ancVtqOE-YfPld_13tuw">250,000</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';">, relating to the initial earn-out. Subsequent to September 30, 2023, it was determined that the calculated amount of the second earn-out payment was </span><span style="font-family:'Arial','Helvetica','sans-serif';">$<ix:nonFraction unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA" contextRef="Duration_11_28_2023_To_11_28_2023_SKtlU9g6_ECOEbD8aG-BaA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities" scale="6" id="Narr_oJOHQZh300ONTNFhBbeK9w">5.6</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';"> million, which was paid by the Company on November 28, 2023. </span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:36.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The carrying amounts of financial instruments such as cash equivalents, accounts receivable, other assets, accounts payable, accrued expenses and other liabilities approximate their related fair values due to the short-term maturities of these items. Non-financial assets, such as equipment and leasehold improvements, and intangible assets are subject to non-recurring fair value measurements if they are deemed impaired.</span></p></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:12pt;visibility:hidden;">&#8203;</span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">22</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_122034c3_1c19_4cb6_92c5_4482a48d6681"></a><a id="Item2ManagementsDiscussionandAnalysis_13"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Item 2. Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:2pt 0pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The following discussion and analysis of our financial condition and results of operations should be read in conjunction with the condensed consolidated financial statements and the accompanying notes thereto included elsewhere in this report.</span></p><a id="_da7ba85d_f1e1_41f0_894f_30a3c60c0300"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:14pt 0pt 12pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Overview</b><span style="font-family:'Arial','Helvetica','sans-serif';background:#ffff00;"> </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We are a medical technology company that develops and provides innovative medical devices for the treatment of underserved chronic diseases. Our mission is to help people suffering from chronic diseases live better and care for themselves at home. We focus our efforts on advancing the standard of care in treating underserved chronic diseases in the home setting to improve patient outcomes and quality of life and help control rising healthcare expenditures. Our areas of therapeutic focus are (1) vascular disease, with a goal of advancing the standard of care in treating lymphedema and chronic venous insufficiency, (2) oncology, where lymphedema is a common consequence among cancer survivors and (3) providing airway clearance therapy for those suffering from chronic respiratory conditions. We possess a unique, scalable platform to deliver at-home healthcare solutions throughout the United States. This evolving home care delivery model is recognized by policymakers and insurance payers as a key for controlling rising healthcare costs. Our solutions deliver cost-effective, clinically proven, long-term treatment for people with these chronic diseases.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our current lymphedema products are the Flexitouch Plus and Entre Plus systems and our airway clearance product is the AffloVest. A predecessor to our Flexitouch system received 510(k) clearance from the U.S. Food and Drug Administration (the &#8220;FDA&#8221;) in July 2002, and we introduced the system to address the many limitations of self-administered home-based manual lymphatic drainage therapy. We began selling our more advanced Flexitouch system after receiving 510(k) clearance from the FDA in October 2006. In September 2016, we received 510(k) clearance from the FDA for the Flexitouch system in treating lymphedema of the head and neck. In June 2017, we announced that we received 510(k) clearance from the FDA for the Flexitouch Plus, the third-generation version of our Flexitouch system. In December 2020, we received 510(k) clearance for two new indications for our Flexitouch Plus system: phlebolymphedema and lipedema. We introduced our Entre system in the United States in February 2013 and the second generation, Entre Plus, in March 2023. The Entre Plus system is sold or rented to patients who need a simple pump or who do not yet qualify for insurance reimbursement for an advanced compression device such as our Flexitouch Plus system. Sales and rentals of our lymphedema products represented 87% and 86% of our revenue in the six months ended June 30, 2024 and 2023, respectively.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On September 8, 2021, we acquired the assets of the AffloVest airway clearance product line. AffloVest is a portable, wearable vest that provides airway clearance to&#160;treat patients with chronic respiratory conditions such as bronchiectasis or conditions resulting from neuromuscular disorders. For the six months ended June 30, 2024 and 2023, sales of AffloVest represented 13% and 14% of our revenue, respectively.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">To support the growth of our business, we continue to invest in our commercial infrastructure, consisting of our direct sales force, training resources, reimbursement capabilities and clinical expertise. We market our lymphedema products in the United States using a direct-to-patient and -provider model. The AffloVest device is sold through respiratory durable medical equipment providers throughout the United States that service patients and bill third-party payers for the product. We also employ a small group of respiratory specialists, who educate DME representatives, provide product demonstrations for targeted clinicians and support technical questions related to the AffloVest. As of June 30, 2024, we employed 264 field sales representatives for our lymphedema products and a team of 19 supporting our airway clearance products. This compares to 245 field sales representatives (excluding 4 key account managers) for our lymphedema products and a team of 12 specialists supporting our airway clearance products as of June 30, 2023.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We invest in our reimbursement function to improve operational efficiencies and enhance individual payer expertise, while continuing our strategic focus of payer development. Our payer relations function focuses on payer policy development, education, contract negotiations, and data analysis. Our reimbursement operations function is responsible for verifying patient insurance benefits, individual patient case development, prior authorization submissions, case follow-up, and appeals when necessary. </span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">23</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_Hlk69461730"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We also have a clinical team, consisting of a scientific advisory board, in-house therapists and nurses, and a Chief Medical Officer, that serves as a resource to clinicians and patients and guides the development of clinical evidence in support of our products. Most clinical studies require observation and interaction with clinicians and patients to monitor results and progress. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We rely on third-party contract manufacturers for the sourcing of parts, the assembly of our controllers and the manufacturing of the garments used with our systems. We conduct final assembly of the garments used with our products, perform quality assurance and ship our products from our facility in Minnesota.</span><span style="font-size:12pt;"> </span><span style="font-family:'Arial','Helvetica','sans-serif';">We also manufacture and ship the AffloVest device from our Minnesota-based facility.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">In July 2022, we launched Kylee&#8482; a free mobile app that makes it easier for patients to manage their conditions by tracking treatments and symptoms, as well as having direct access to educational resources.&#160;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">For the three months ended June 30, 2024, we generated revenue of $73.2 million and had net income of $4.3 million, compared to revenue of $68.3 million and a net loss of $0.1 million for the three months ended June 30, 2023. For the six months ended June 30, 2024, we generated revenue of $134.3 million and had net income of $2.1 million, compared to revenue of $127.2 million and a net loss of $2.0 million for the six months ended June 30, 2023. Our primary sources of capital since our initial public offering in 2016 have been from operating income, bank financing and our public offering in February 2023.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-top:2pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We operate in one segment for financial reporting purposes.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:14pt 0pt 12pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Current Economic Conditions</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="display:inline-block;text-align:left;text-indent:0pt;width:36pt;"></span><span style="font-family:'Arial','Helvetica','sans-serif';">General global economic downturns and macroeconomic trends, including heightened inflation, capital market volatility, interest rate fluctuations, increased unemployment and economic slowdown or recession, may result in unfavorable conditions that could negatively affect demand for our products and exacerbate some of the other risks that affect our business, financial condition and results of operations.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="display:inline-block;text-align:left;text-indent:0pt;width:36pt;"></span><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">24</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_a63cb830_ed4d_4bff_8aa2_49bd49e030cb"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Results of Operations</b></p><a id="_0b657421_416c_43b3_a1fe_4c4894265866"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;background:#ffffff;">Comparison of the Three and Six Months Ended June 30, 2024 and 2023</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="display:inline-block;text-align:left;text-indent:0pt;width:36pt;"></span><span style="font-family:'Arial','Helvetica','sans-serif';background:#ffffff;">The following table presents our results of operations for the periods indicated:</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:37.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:37.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:39.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:39.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:20.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Change</b></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:18.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:18.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">%</b></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Condensed Consolidated Statement</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:7.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">%&#160;of</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:7.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">%&#160;of</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">of Operations Data:</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:7.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:7.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 64,267</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 88</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 59,802</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 88</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4,465</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 7</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Rental revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 8,951</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 12</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 8,537</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 12</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 414</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 5</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 73,218</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 100</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 68,339</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 100</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4,879</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 7</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Cost of revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cost of sales revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 16,263</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 22</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 16,865</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 25</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (602)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (4)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cost of rental revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2,852</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 3,175</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (323)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (10)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total cost of revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 19,115</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 26</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 20,040</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 29</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (925)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (5)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Gross profit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Gross profit - sales revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 48,004</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 66</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 42,937</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 63</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 5,067</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 12</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Gross profit - rental revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 6,099</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 8</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 5,362</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 8</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 737</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 14</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Gross profit</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 54,103</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 74</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 48,299</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 71</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 5,804</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 12</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Operating expenses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales and marketing </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 28,608</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 39</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 28,206</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 41</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 402</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 1</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Research and development</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2,234</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 3</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 1,833</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 3</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 401</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 22</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Reimbursement, general and administrative</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 16,779</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 23</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 14,991</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 22</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 1,788</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 12</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Intangible asset amortization and earn-out</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 633</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 1</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 1,211</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (578)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (48)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total operating expenses</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 48,254</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 66</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 46,241</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 68</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2,013</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Income from operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 5,849</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 8</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2,058</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 3</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 3,791</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 184</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Other income (expense)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 225</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (838)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (1)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 1,063</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (127)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Income before income taxes</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 6,074</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 8</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 1,220</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4,854</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">N.M.</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Income tax expense</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 1,776</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 1,320</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 456</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 35</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Net income (loss)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4,298</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 6</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (100)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4,398</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">N.M.</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">25</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:39.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:39.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:19.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Change</b></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:19.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:19.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">%</b></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Condensed Consolidated Statement</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:7.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">%&#160;of</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:7.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">%&#160;of</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">of Operations Data:</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:7.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:7.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 117,574</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 88</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 112,593</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 89</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4,981</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Rental revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 16,732</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 12</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 14,592</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 11</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2,140</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 15</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 134,306</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 100</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 127,185</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 100</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 7,121</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 6</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Cost of revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cost of sales revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 31,207</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 23</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 31,507</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 25</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (300)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (1)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cost of rental revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 5,567</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 5,911</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (344)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (6)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total cost of revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 36,774</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 27</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 37,418</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 29</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (644)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (2)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Gross profit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Gross profit - sales revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 86,367</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 65</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 81,086</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 64</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 5,281</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 7</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Gross profit - rental revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 11,165</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 8</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 8,681</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 7</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2,484</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 29</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Gross profit</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 97,532</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 73</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 89,767</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 71</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 7,765</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 9</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Operating expenses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales and marketing </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 55,965</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 42</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 54,508</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 43</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 1,457</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 3</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Research and development</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4,377</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 3</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4,066</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 3</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 311</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 8</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Reimbursement, general and administrative</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 33,040</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 25</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 30,425</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 24</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2,615</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 9</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Intangible asset amortization and earn-out</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 1,265</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 1</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2,516</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (1,251)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (50)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total operating expenses</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 94,647</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 71</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 91,515</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 72</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 3,132</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 3</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Income (loss) from operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2,885</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (1,748)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (1)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4,633</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">N.M.</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Other income (expense)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 380</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (1,831)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (2)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2,211</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (121)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Income (loss) before income taxes</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 3,265</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (3,579)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (3)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 6,844</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (191)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Income tax expense (benefit)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 1,176</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 1</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (1,593)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (1)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2,769</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (174)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Net income (loss)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.79%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 2,089</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 3</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.64%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (1,986)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (2)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4,075</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">N.M.</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">%</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:36.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:2.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:2.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p><a id="_59b6faea_7008_47aa_b933_0a9fc1e57eea"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Revenue</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Revenue increased $4.9 million, or 7%, to $73.2 million in the three months ended June 30, 2024, compared to $68.3 million in the three months ended June 30, 2023. </span><span style="font-family:'Arial','Helvetica','sans-serif';">The increase in total revenue was attributable to an increase of $4.7 million, or 8%, in sales and rentals of the lymphedema product line and an increase of $0.2 million, or 2%, in sales of the airway clearance product line in the three months ended June 30, 2024, compared to the three months ended June 30, 2023. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Revenue increased $7.1 million, or 6%, to $134.3 million in the six months ended June 30, 2024, compared to $127.2 million in the six months ended June 30, 2023. </span><span style="font-family:'Arial','Helvetica','sans-serif';">The increase in total revenue was attributable to an increase of $7.2 million, or 7%, in sales and rentals of the lymphedema product line, slightly offset by a decrease of $0.1 million, or 1%, in sales of the airway clearance product line in the six months ended June 30, 2024, compared to the six months ended June 30, 2023. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The increase in the lymphedema product line revenue in each of the three and six months ended June 30, 2024, was attributable to the growth of our field sales team and continued strength of our lymphedema therapy solutions. The increase in the airway clearance product line revenue in the three months ended June 30, 2024, was primarily attributable to the onboarding of a new DME partner in 2024. The decrease in the airway clearance product line revenue in the six months ended June 30, 2024, was primarily attributable to one large DME provider experiencing slowed placements of our AffloVest system due to the expiration of the COVID-19 Public Health Emergency waiver in May 2023 and a return to &#8220;pre-public health emergency&#8217; eligibility requirements, partially offset by the onboarding of a new DME partner in 2024.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">26</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The following table summarizes our revenue by product line for the three and six months ended June 30, 2024 and 2023, both in dollars and percentage of total revenue: </span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:-0.22151566%;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:33.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:33.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:28.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Change</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">%</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Lymphedema products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 64,683</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 59,999</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4,684</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">8%</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Airway clearance products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 8,535</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 8,340</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 195</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2%</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 73,218</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 68,339</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 4,879</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">7%</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Percentage of total revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Lymphedema products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">88%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">88%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Airway clearance products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">12%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">12%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">100%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">100%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:33.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:28.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Change</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">%</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Lymphedema products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 116,996</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 109,751</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 7,245</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">7%</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Airway clearance products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 17,310</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 17,434</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (124)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(1)%</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 134,306</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 127,185</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 7,121</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">6%</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Percentage of total revenues</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Lymphedema products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">87%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">86%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Airway clearance products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">13%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">14%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">100%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">100%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:33.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our business is affected by seasonality. In the first quarter of each year, when most patients have started a new insurance year and have not yet met their annual out-of-pocket payment obligations, we experience substantially reduced demand for our products. We typically experience higher revenue in the third and fourth quarters of the year when patients have met their annual insurance deductibles, thereby reducing their out-of-pocket costs for our products, and have an increasing desire to exhaust their flexible spending accounts at year end. This seasonality applies only to purchases and rentals of our products by patients covered by commercial insurance and is not relevant to Medicare, Medicaid or the Veterans Administration, as those payers either do not have plans that have declining deductibles over the course of the plan year and/or do not have plans that include patient deductibles for purchases or rentals of our products. </span></p><a id="_94474d91_d776_467a_95c7_ef5ae04ac426"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;padding-left:10.1pt;text-align:justify;text-indent:-10.1pt;background:#ffffff;margin:12pt 0pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Cost of Revenue and Gross Margin</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cost of revenue decreased $0.9 million, or 5%, to $19.1 million in the three months ended June 30, 2024, compared to $20.0 million in the three months ended June 30, 2023. Cost of revenue decreased $0.6 million, or 2%, to $36.8 million in the six months ended June 30, 2024, compared to $37.4 million in the six months ended June 30, 2023. The decrease in cost of revenue in both periods was primarily attributable to lower manufacturing and warranty costs.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Gross margin was 73.9% and 70.7% in the three months ended June 30, 2024 and 2023, respectively, and 72.6% and 70.6% in the six months ended June 30 2024 and 2023, respectively.</span></p><a id="_cf55420b_cadd_4fa4_9e0f_72bed83a4685"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Sales and Marketing Expenses</span></p><a id="_Hlk46245395"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-top:2pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales and marketing expenses increased $0.4 million, or 1%, to $28.6 million in the three months ended June 30, 2024, compared to $28.2 million in the three months ended June 30, 2023. The increase was primarily </span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">27</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">attributable to a $0.7 million increase in meetings, seminars and tradeshow related expenses and a $0.3 million increase in travel and entertainment expenses</span><span style="font-family:'Arial','Helvetica','sans-serif';">, partially offset by a $0.2 million decrease in educational grants expense, a $0.2 million decrease in expenses relating to demo units and a $0.2 million decrease in personnel-related compensation expenses.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales and marketing expenses increased $1.5 million, or 3%, to $56.0 million in the six months ended June 30, 2024, compared to $54.5 million in the six months ended June 30, 2023. The increase was primarily attributable to a $0.7 million increase in travel and entertainment expenses, a $0.6 million increase in meetings, seminars and tradeshow related expenses and a $0.2 million increase in personnel-related compensation expenses. </span></p><a id="_d33f659d_91f6_4d30_bfdb_51d23b92a042"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Research and Development Expenses</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-top:2pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Research and development (&#8220;R&amp;D&#8221;) expenses increased $0.4 million, or 22%, to $2.2 million in the three months ended June 30, 2024, compared to $1.8 million in the three months ended June 30, 2023. The increase was primarily attributable to a $0.3 million increase in professional fees and a $0.1 million increase in clinical study related expenses.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;margin:14pt 0pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">R&amp;D expenses increased $0.3 million, or 8%, to $4.4 million in the six months ended June 30, 2024, compared to $4.1 million in the six months ended June 30, 2023. The increase was primarily attributable to a $0.1 million increase in professional fees, a $0.1 million increase in clinical study related expenses and a $0.1 million increase in personnel-related compensation expenses.</span></p><a id="_3106eaec_d521_4116_a560_ab8ae5547e88"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Reimbursement, General and Administrative Expenses</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;padding-top:2pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Reimbursement, general and administrative expenses increased $1.8 million, or 12%, to $16.8 million in the three months ended June 30, 2024, compared to $15.0 million in the three months ended June 30, 2023. This increase was primarily attributable to a $0.8 million increase in occupancy costs, depreciation expense and professional fees, a $0.5 million increase in personnel-related compensation expenses and a $0.5 million increase in IT related expenses.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Reimbursement, general and administrative expenses increased $2.6 million, or 9%, to $33.0 million in the six months ended June 30, 2024, compared to $30.4 million in the six months ended June 30, 2023. This increase was primarily attributable to a $1.0 million increase in personnel-related compensation expenses, a $1.0 million increase in IT related expenses, and a $0.6 million increase in occupancy costs, depreciation expense and professional fees.</span></p><a id="_f398f355_6037_427a_afec_341d242d975c"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Intangible Asset Amortization and Earn-out Expense</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;padding-top:2pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Intangible asset amortization and earn-out expense decreased $0.6 million to $0.6 million in the three months ended June 30, 2024, compared to $1.2 million in the three months ended June 30, 2023. The decrease was related to there being no earn-out expense in the three months ended June 30, 2024, as final payment under the AffloVest Acquisition earn-out Arrangement was made on November 28, 2023, compared to an increase in the fair value of the earn-out expense of $0.6 million for the three months ended June 30, 2023.</span><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"> </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Intangible asset amortization and earn-out expense decreased $1.3 million to $1.3 million in the six months ended June 30, 2024, compared to $2.5 million in the six months ended June 30, 2023. The decrease was related to there being no earn-out expense in the six months ended June 30, 2024, as final payment under the AffloVest Acquisition earn-out arrangement was made on November 28, 2023, compared to an increase in the fair value of the earn-out expense of $1.2 million for the six months ended June 30, 2023.</span></p><a id="_89244d39_818b_4ba3_ab47_ca4b5c40cdf1"></a><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;margin-bottom:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;margin-bottom:5pt;visibility:hidden;">&#8203;</span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">28</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Other Income (Expense), Net</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We recorded other income, net of $0.2 million and other expense, net of $0.8 million for the three months ended June 30, 2024 and 2023, respectively. The primary drivers of the change were a decrease in interest expense of $0.6 million and an increase in interest income of $0.4 million.</span><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"> </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We recorded other income, net of $0.4 million and other expense, net of $1.8 million for the six months ended June 30, 2024 and 2023, respectively. The primary drivers of the change were a decrease in interest expense of $1.2 million and an increase in interest income of $1.0 million.</span></p><a id="_f7cc6d3a_5d9c_46c9_adca_a0fccf93dc1a"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Income Taxes</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We recorded income tax expense of $1.8 million and $1.3 million for the three months ended June 30, 2024 and 2023, respectively. The primary driver of the change in our effective tax rate was the fact that we did not have a full valuation allowance on our deferred tax assets for the current year period, while the prior year period reported a full valuation allowance.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We recorded an income tax expense of $1.2 million and an income tax benefit of $1.6 million for the six months ended June 30, 2024 and 2023, respectively. The primary driver of the change in our effective tax rate was the fact that we did not have a full valuation allowance on our deferred tax assets for the current year period, while the prior year period reported a full valuation allowance. Additionally, in the prior year period we had year-to-date losses that we expected to realize, which drove a tax benefit.</span></p><a id="_4d534598_a9cb_47c4_b837_731fea99f537"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Liquidity and Capital Resources</b></p><a id="_ed6f1507_7700_4636_80b3_ca6f3529191f"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Cash Flows</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">At June 30, 2024, our principal sources of liquidity were cash and cash equivalents of $</span><span style="font-family:'Arial','Helvetica','sans-serif';">73.6 </span><span style="font-family:'Arial','Helvetica','sans-serif';">million and net accounts receivable of $</span><span style="font-family:'Arial','Helvetica','sans-serif';">46.4</span><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;million. This compares to cash and cash equivalents of $63.2 million and net accounts receivable of $62.0 million at June 30, 2023. &#160;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The following table summarizes our cash flows for the periods indicated:</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:56.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:15.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:3.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:15.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:56.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:39.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:39.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:56.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:3.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net cash provided by (used in):</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:56.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Operating activities</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 14,066</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 13,407</span></p></td></tr><tr><td style="vertical-align:bottom;width:56.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Investing activities</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (1,027)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (1,142)</span></p></td></tr><tr><td style="vertical-align:bottom;width:56.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Financing activities</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> (454)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 29,018</span></p></td></tr><tr><td style="vertical-align:bottom;width:56.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net increase in cash and cash equivalents</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 12,585</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';white-space:pre-wrap;"> 41,283</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><a id="_db429af4_7021_4eac_917f_dd24b3021228"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Operating Activities</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net cash provided by operating activities during the six months ended June 30, 2024 was $14.1 million, resulting from non-cash net income adjustments of $7.3 million, a net increase in operating assets and liabilities of $4.7 million and net income of $2.1 million. The positive non-cash net income adjustments consisted primarily of $3.9 million of stock-based compensation expense and $3.3 million of depreciation and amortization expense. Cash provided relating to the change in operating assets and liabilities primarily consisted of a decrease in accounts receivable of $7.7 million, a decrease in inventories of $3.7 million and a $0.6 million decrease in net investments in leases, partially offset by a decrease in accrued payroll and related taxes of $4.7 million, a decrease in accounts payable of $1.6 million and a decrease in income taxes payable of $0.9 million.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';background:#ffffff;">Net cash provided by operating activities during the six months ended June 30, 2023 was $13.4 million, resulting from a net increase in operating assets and liabilities of $7.1 million and non-cash net loss adjustments </span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">29</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';background:#ffffff;">of $8.3 million, which were partially offset by a net loss of $2.0 million. Cash provided relating to the change in operating assets and liabilities primarily consisted of a decrease in accounts receivable of $15.9 million, a decrease in net investment in leases of $2.9 million and a decrease in inventories of $2.8 million, partially offset by a decrease in accrued expenses of $6.0 million, a decrease in accrued payroll and related taxes and income taxes payable of $4.0 million, a decrease in income taxes payable of $3.3 million, an increase in prepaid expenses of $0.7 million and a decrease in accounts payable of $0.7 million. The non-cash net loss adjustments consisted primarily of $3.8 million of stock-based compensation expense, $3.3 million of depreciation and amortization expense and a $1.2 million change in fair value of earn-out liability.</span></p><a id="_84ccf7db_2340_4e4d_a84e_ff61b2f40934"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Investing Activities</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net cash used in investing activities during the six months ended June 30, 2024, was $1.0 million, consisting of purchases of property and equipment primarily related to tenant improvements, and patent costs.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net cash used in investing activities during the six months ended June 30, 2023, was $1.1 million, consisting of purchases of property and equipment, and patent costs.</span></p><a id="_cfd943c2_833f_4891_9a6a_ed8cb565e6db"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Financing Activities</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net cash used in financing activities during the six months ended June 30, 2024, was $0.5 million, primarily consisting of a $1.5 million payment made on our term loan, partially offset by $1.0 million in proceeds from the issuance of common stock under the ESPP.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net cash provided by financing activities during the six months ended June 30, 2023, was $29.0 million, primarily consisting of net proceeds from the offering of our common stock of $34.6 million and $1.0 million in proceeds from the issuance of common stock under the ESPP. The increase was partially offset by a payment of $5.0 million on the AffloVest earn-out and a $1.5 million payment made on our term loan.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><a id="_26da70c8_05b8_4b0e_b067_65930d842c66"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Credit Agreement</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:12pt;"> </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On April 30, 2021, we entered into an Amended and Restated Credit Agreement (the &#8220;Restated Credit Agreement&#8221;) with the lenders from time to time party thereto, and Wells Fargo Bank, National Association, as Administrative Agent. The Restated Credit Agreement amended and restated in its entirety our prior credit agreement.</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:12pt;"> </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On September 8, 2021, we entered into a First Amendment Agreement (the &#8220;Amendment&#8221;), which amended the Restated Credit Agreement (as amended by the Amendment, the &#8220;Credit Agreement&#8221;) with the lenders from time to time party thereto and Wells Fargo Bank, National Association, as administrative agent. The Amendment, among other things, added a $30.0 million incremental term loan to the $25.0 million revolving credit facility provided by the Restated Credit Agreement. The term loan is reflected on our condensed consolidated financial statements as a note payable. The Credit Agreement provides that, subject to satisfaction of certain conditions, we may increase the amount of the revolving loans available under the Credit Agreement and/or add one or more term loan facilities in an amount not to exceed $25.0 million in the aggregate, such that the total aggregate principal amount of loans available under the Credit Agreement (including under the revolving credit facility) does not exceed $80.0 million.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;">&#160;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On September 8, 2021, in connection with the closing of the acquisition of the AffloVest business, we borrowed the $30.0 million term loan and utilized that borrowing, together with a draw of $25.0 million under the revolving credit facility and cash on hand, to fund the purchase price. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On February 22, 2022, we entered into a Second Amendment Agreement (the &#8220;Second Amendment&#8221;), which further amends the Credit Agreement. The Second Amendment modified the maximum leverage ratio, the minimum fixed charge coverage ratio and the minimum consolidated EBITDA covenants under the Credit Agreement, and added a minimum liquidity covenant, through the quarter ended June 30, 2023. The Second Amendment also increased the applicable margin for LIBOR rate loans under the Credit Agreement during the period commencing on the date of the Second Amendment and ending on the last day of the fiscal quarter </span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">30</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">ending June 30, 2023. Pursuant to the Second Amendment, we made a mandatory principal prepayment of the term loan of $3.0 million on February 22, 2022.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On June 21, 2023, we entered into a Third Amendment Agreement (the &#8220;Third Amendment&#8221;) that replaced the interest rate benchmark under the Credit Agreement from LIBOR to the term Secured Overnight Financing Rate (&#8220;SOFR&#8221;). All tenors of term SOFR are subject to a credit spread adjustment of 0.10% (&#8220;Adjusted Term SOFR&#8221;). </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On August 1, 2023, we entered into a Fourth Amendment Agreement (the &#8220;Fourth Amendment&#8221;), which further amended the Credit Agreement. The Fourth Amendment, among other things, decreased the commitment fees payable under the revolving credit facility and eliminated the temporary increase in the applicable margin for Adjusted Term SOFR loans. The Fourth Amendment also eliminated the liquidity financial covenant and modified the remaining financial covenants to reflect the termination of the temporary covenant relief period that was in place until June 30, 2023 pursuant to the Second Amendment. In addition, the Fourth Amendment provided for an additional term loan in the amount of $8.25 million, which we used for a paydown of the revolving credit facility. The Fourth Amendment also extended the maturity date of the term loans and revolving credit facility under the Credit Agreement from September 8, 2024 to August 1, 2026.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On December 21, 2023, we made a payment of $16.8 million to repay in full the outstanding balance on the revolving credit facility.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">As of June 30, 2024, we had outstanding borrowings of $27.8 million under the Credit Agreement, comprised entirely of the term loan. The principal of the term loan is required to be repaid in quarterly installments of $750,000.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">For additional information regarding the Credit Agreement, including interest rates, fees and maturities, see Note 8 &#8211; &#8220;Credit Agreement&#8221; of the condensed consolidated financial statements contained in this report.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Future Cash Requirements</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;padding-top:2pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">For a discussion of our </span><span style="font-family:'Arial','Helvetica','sans-serif';">material estimated future cash requirements under our contractual obligations and commercial commitments, in total and disaggregated into current and long-term</span><span style="font-family:'Arial','Helvetica','sans-serif';">, see &#8220;Future Cash Requirements&#8221; included in Item 7, Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations in our Annual Report on Form 10-K for the year ended December 31, 2023. There have been no material changes since December 31, 2023.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Adequacy of Resources</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our future cash requirements may vary significantly from those now planned and will depend on many factors, including:</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">the impacts of inflation, rising interest rates or a recession on our business;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">sales and marketing resources needed to further penetrate our market;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">expansion of our operations;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">response of competitors to our solutions and applications; </span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">costs associated with clinical research activities;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">increases in interest rates;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">labor shortages and wage inflation;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">component price inflation;</span></td></tr></table></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">31</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;">&#9679;</td><td style="padding:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">costs to develop and implement new products; and </span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">use of capital for acquisitions or licenses, if any.</span></td></tr></table><div style="margin-top:12pt;"></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Historically, we have experienced increases in our expenditures consistent with the growth in our revenue, operations and personnel, and we anticipate that our expenditures will continue to increase as we expand our business.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We believe our cash, cash equivalents and cash flows from operations will be sufficient to meet our working capital, capital expenditure, debt repayment and related interest, and other cash requirements for at least the next twelve months.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;padding-top:2pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Inflation and changing prices did not have a material effect on our business during the quarter ended June 30, 2024, and we do not expect that inflation or changing prices will materially affect our business for at least the next twelve months.</span></p><a id="_fbd9de33_d379_49bd_9084_ee140811af4b"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;padding-left:10.1pt;text-align:justify;text-indent:-10.1pt;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Recent Accounting Pronouncements</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;padding-top:2pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Refer to Note 3 </span><span style="font-family:'Arial','Helvetica','sans-serif';">&#8211;</span><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8220;Summary of Significant Accounting Policies&#8221; of the condensed consolidated financial statements contained in this report for a description of recently issued accounting pronouncements that are applicable to our business.</span></p><a id="_c8fc2fb9_ad8b_4f4d_ade8_3f593e399f32"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Critical Accounting Estimates</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Critical accounting estimates are those that involve a significant level of estimation uncertainty and have had or are reasonably likely to have a material impact on our financial condition and results of operations.</span><span style="font-family:'Arial','Helvetica','sans-serif';"> For additional information, please see the discussion of our most critical accounting estimates under &#8220;Critical Accounting </span><span style="font-family:'Arial','Helvetica','sans-serif';">Estimates</span><span style="font-family:'Arial','Helvetica','sans-serif';">&#8221; in Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations in our Annual Report on Form 10-K for the year ended December 31, 2023.</span></p><a id="_4256597f_26b8_48d8_bf31_8af194717db0"></a><a id="Item3QuantitativeandQualitativeDisclosur"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Item 3. Quantitative and Qualitative Disclosures About Market Risk</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">For a discussion on our market risks, see Item 7A, &#8220;Quantitative and Qualitative Disclosures About Market Risk,&#8221; included in our Annual Report on Form 10-K for the year ended December 31, 2023. There have been no material changes since December 31, 2023. </span></p><a id="_58e3f2bb_e25f_45ba_b57b_1c2a9ece7c6d"></a><a id="Item4ControlsandProcedures_119285"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Item 4. Controls and Procedures.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Evaluation of Disclosure Controls and Procedures</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our management, with the participation of our Chief Executive Officer and Chief Financial Officer, evaluated the effectiveness of our disclosure controls and procedures as of June 30, 2024. The term &#8220;disclosure controls and procedures,&#8221; as defined in Rules&#160;13a-15(e)&#160;and 15d-15(e)&#160;under the Securities Exchange Act of 1934, as amended (the &#8220;Exchange Act&#8221;), means controls and other procedures of a company that are 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 recorded, processed, summarized and reported within the time periods specified in the SEC&#8217;s rules&#160;and forms. 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. Management recognizes that any controls and procedures, no matter how well designed and operated, can provide only reasonable assurance of achieving their objectives and management necessarily applies its judgment in evaluating the cost-benefit relationship of possible controls and procedures. Based on the evaluation of our disclosure controls and procedures as of June 30, 2024, our Chief Executive Officer and Chief Financial Officer concluded that, as of such date, our disclosure controls and procedures were effective at the reasonable assurance level.</span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">32</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Changes in Internal Control over Financial Reporting</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">There was no change in our internal control over financial reporting, as defined in Rules 13a-15(f) and 15d-15(f) under the Exchange Act, that occurred during the quarter ended June 30, 2024, that has materially affected, or is reasonably likely to materially affect, our internal control over financial reporting.</span></p><a id="_531c9245_1aa1_4274_9246_b0d0828dd373"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">PART&#160;II&#8212;OTHER INFORMATION</b></p><a id="PARTIIOTHERINFORMATION_513372"></a><a id="_Hlk69476953"></a><a id="_be29b1b5_b2c9_4632_8078_c80dc1dc9308"></a><a id="Item1LegalProceedings_81141"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Item 1. Legal Proceedings.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Information pertaining to certain legal proceedings in which we are involved can be found in Note 9 &#8211; &#8220;Commitments and Contingencies&#8221; to our condensed consolidated financial statements included in Part I, Item 1 of this report and is incorporated herein by reference.</span> </p><a id="_41657ca4_fcc4_4e35_bf28_e96e98f776ad"></a><a id="Item1ARiskFactors_664913"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Item&#160;1A.&#160;Risk Factors.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">In addition to the other information set forth in this Quarterly Report on Form 10-Q, you should carefully consider the factors discussed in &#8220;Risk Factors&#8221; in our Annual Report on Form 10-K for the year ended December 31, 2023, which could materially affect our business, financial condition or future results. There have been no material changes in our risk factors from those disclosed in that report.</span></p><a id="_7e8c7206_fdad_4c23_afa1_f4a9819ba5b8"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Item&#160;2.&#160;Unregistered Sales of Equity Securities and Use of Proceeds.</b></p><a id="Item2UnregisteredSalesofEquitySecurities"></a><a id="_b90781f2_d74d_467f_9d81_be77e1b1ff73"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">None.</span></p><a id="_0008f8ca_b362_40a6_995d_d57b84ae7c64"></a><a id="Item3DefaultsUponSeniorSecurities_780159"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Item 3. Defaults Upon Senior Securities.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Not applicable.</span></p><a id="_670c317c_773e_4a67_a756_5f83ed58eff4"></a><a id="Item4MineSafetyDisclosures_923755"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Item 4. Mine Safety Disclosures.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Not</span><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"> </b><span style="font-family:'Arial','Helvetica','sans-serif';">applicable.</span></p><a id="_013e4a5c_2afd_4ab5_8e1d_89c5ff5c5fff"></a><a id="Item5OtherInformation_507706"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Item 5. Other Information.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Trading Arrangements</span></p><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_lIPhxvLYvEawCTUwfXvdhQ" name="ecd:MtrlTermsOfTrdArrTextBlock" id="Tb_ark3eLNZL0aHAR9KtxJLtg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;padding-top:2pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">On </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_lIPhxvLYvEawCTUwfXvdhQ" name="ecd:TrdArrAdoptionDate" id="Narr_psBotJ7HQk-tWUNSy46Rpw"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">May 15, 2024</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_lIPhxvLYvEawCTUwfXvdhQ" name="ecd:TrdArrIndName" id="Narr_dMgw0jh8SEy_9w_7LzynDg"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Kristie T. Burns</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, our </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_lIPhxvLYvEawCTUwfXvdhQ" name="ecd:TrdArrIndTitle" id="Narr_2Hy_7jJv_0WCfaHOo_CREw"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Senior VP Marketing and Clinical Affairs</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_lIPhxvLYvEawCTUwfXvdhQ" format="ixt:booleantrue" name="ecd:Rule10b51ArrAdoptedFlag" id="Narr_1nrgpPJS1kGjSy94Bj5w_A"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">adopted</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> a pre-arranged trading plan that is intended to satisfy the affirmative defense of Rule 10b5-1(c) of the Exchange Act. This plan provides for the sale of up to </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_QzV45OSiZEmFAc-892qXUw" decimals="INF" format="ixt:numdotdecimal" name="ecd:TrdArrSecuritiesAggAvailAmt" scale="0" id="Narr_uF_-xBgKwkCw28rgUfX2qg">7,444</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> shares of our common stock in the aggregate and terminates on the earlier of the close of market on </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_lIPhxvLYvEawCTUwfXvdhQ" name="ecd:TrdArrExpirationDate" id="Narr_M8q9LpTQQEyr5GtwgKim5A"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">August 26, 2025</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, or the date all shares are sold thereunder.</span></p></ix:nonNumeric><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_N-NgVtIWB0uz0iz8rSkamg" name="ecd:MtrlTermsOfTrdArrTextBlock" id="Tb_dSpvDwO080-__mgsjdSiHg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">On </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_N-NgVtIWB0uz0iz8rSkamg" name="ecd:TrdArrAdoptionDate" id="Narr_ReuKjzxrj0ql_93Bocja6g"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">May 28, 2024</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_N-NgVtIWB0uz0iz8rSkamg" name="ecd:TrdArrIndName" id="Narr_97ceSjkwCE-ecUTIi_h4cw"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">William W. Burke</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_N-NgVtIWB0uz0iz8rSkamg" name="ecd:TrdArrIndTitle" id="Narr_Q3h2RuHabUqQ9iphKCi5bQ"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Chairman of our Board of Directors</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_N-NgVtIWB0uz0iz8rSkamg" format="ixt:booleantrue" name="ecd:Rule10b51ArrAdoptedFlag" id="Narr_bMJTbtkfskKr_Bb7U3_NDg"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">adopted</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> a pre-arranged trading plan that is intended to satisfy the affirmative defense of Rule 10b5-1(c) of the Exchange Act. This plan provides for the sale of up to </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_rC46QBunc0aHkmL3cYaEgw" decimals="INF" format="ixt:numdotdecimal" name="ecd:TrdArrSecuritiesAggAvailAmt" scale="0" id="Narr_penASaVZg0iur6dkDuHBQQ">7,013</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> shares of our common stock in the aggregate and terminates on the earlier of the close of market on </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_N-NgVtIWB0uz0iz8rSkamg" name="ecd:TrdArrExpirationDate" id="Narr_IOf22S5rpkyAqSa9p2WCdA"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">December 31, 2025</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, or the date all shares are sold thereunder.</span></p></ix:nonNumeric><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pYblZjnHZ0elVdb0CekXcQ" name="ecd:MtrlTermsOfTrdArrTextBlock" id="Tb_f3zCpzQKUUe0IgWUGwBQAg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">On </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pYblZjnHZ0elVdb0CekXcQ" name="ecd:TrdArrAdoptionDate" id="Narr_IZVYLbVik0eHEFkvIV-mgg"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">June 10, 2024</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pYblZjnHZ0elVdb0CekXcQ" name="ecd:TrdArrIndName" id="Narr_J6_GtCZg1kKHBOcWWM7snQ"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Elaine M. Birkemeyer</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pYblZjnHZ0elVdb0CekXcQ" name="ecd:TrdArrIndTitle" id="Narr_aaTzTYfpiUW5T0Uuf1LHrQ"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Chief Financial Officer</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pYblZjnHZ0elVdb0CekXcQ" format="ixt:booleantrue" name="ecd:Rule10b51ArrAdoptedFlag" id="Narr_GQUEgkYulEyXsdQybFd12A"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">adopted</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> a pre-arranged trading plan that is intended to satisfy the affirmative defense of Rule 10b5-1(c) of the Exchange Act. This plan provides for the sale of up to </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pXRqFx4TIUi4vue3wwdTrQ" decimals="INF" format="ixt:numdotdecimal" name="ecd:TrdArrSecuritiesAggAvailAmt" scale="0" id="Narr_bfSyZCL03UGlirb469FhnA">84,848</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> shares of our common stock in the aggregate and terminates on the earlier of the close of market on </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pYblZjnHZ0elVdb0CekXcQ" name="ecd:TrdArrExpirationDate" id="Narr_BBtNfijXWkOhLcTV73oNMg"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">December 31, 2027</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, or the date all shares are sold thereunder.</span></p></ix:nonNumeric><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_NAJ6PimfhkC86HlglviaIQ" name="ecd:MtrlTermsOfTrdArrTextBlock" id="Tb_szzsm9M0_EeR6rWdrp3twQ" continuedAt="Tb_szzsm9M0_EeR6rWdrp3twQ_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">On </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_NAJ6PimfhkC86HlglviaIQ" name="ecd:TrdArrAdoptionDate" id="Narr_trVv3__OeEGOVhhwDV-gQw"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">June 10, 2024</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_NAJ6PimfhkC86HlglviaIQ" name="ecd:TrdArrIndName" id="Narr_Q160r0P81kG7xfNnQsfOnQ"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Daniel L. Reuvers</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_NAJ6PimfhkC86HlglviaIQ" name="ecd:TrdArrIndTitle" id="Narr_pY1YMTd9fEW1iWiOlQmQMQ"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">former Chief Executive Officer and current member of our Board of Directors</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_NAJ6PimfhkC86HlglviaIQ" format="ixt:booleantrue" name="ecd:Rule10b51ArrAdoptedFlag" id="Narr_j6GeaeUUFE6JwpgBclMLBw"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">adopted</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> a pre-arranged trading plan that is intended to satisfy the affirmative defense of Rule 10b5-1(c) of the Exchange Act. This plan provides for the sale of up to </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"><ix:nonFraction unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA" contextRef="As_Of_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_SZhqDQwQQkKluRcxCBVMnw" decimals="INF" format="ixt:numdotdecimal" name="ecd:TrdArrSecuritiesAggAvailAmt" scale="0" id="Narr_vkt4U_0yykKEt8tzpelYZA">130,564</ix:nonFraction></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> shares of our common stock in </span></p></ix:nonNumeric></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">33</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:continuation id="Tb_szzsm9M0_EeR6rWdrp3twQ_cont1"><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">the aggregate and terminates on the earlier of the close of market on </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_NAJ6PimfhkC86HlglviaIQ" name="ecd:TrdArrExpirationDate" id="Narr_jJJ6SNLink6RVkgZ1Lk4TQ"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">December 31, 2025</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, or the date all shares are sold thereunder.</span></p></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">During the quarter ended June 30, 2024, none of our directors or officers (as defined in Rule 16a-1(f) of the Exchange Act) </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" format="ixt:booleanfalse" name="ecd:NonRule10b51ArrAdoptedFlag" id="Narr_1JqxgELOsEK77aNkEZDbhA"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">adopted</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> or </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" format="ixt:booleanfalse" name="ecd:Rule10b51ArrTrmntdFlag" id="Narr_0VU4JZK1CEOE28Gj12fADA"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">terminated</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> any contract, instruction or written plan for the purchase or sale of our securities that was intended to satisfy the affirmative defense conditions of </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" format="ixt:booleanfalse" name="ecd:Rule10b51ArrAdoptedFlag" id="Narr_etvjN5kp6EOofeBBVgRVRw"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Rule 10b5-1</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">(c) of the Exchange Act or any </span><ix:nonNumeric contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ" format="ixt:booleanfalse" name="ecd:NonRule10b51ArrTrmntdFlag" id="Narr_MipY2s8dcEe5KXMyJY5KaQ"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">non-Rule 10b5-1</span></ix:nonNumeric><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> trading arrangement (as defined in Item 408(c) of Regulation S-K). </span></p><a id="_d059dad7_4b1d_476a_8520_43e44b912356"></a><a id="Item6Exhibits_177499"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Item&#160;6.&#160;Exhibits.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The exhibits filed as part of this Quarterly Report on Form&#160;10-Q are set forth on the Exhibit&#160;Index below.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">34</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_c8f18706_cd6e_4cb2_8c9d_3e3882ef3e7e"></a><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">EXHIBIT INDEX</b></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:43.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:32.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Incorporated&#160;by&#160;Reference</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Exhibit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Exhibit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Filed</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:8.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Number</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:43.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Description&#160;of&#160;Exhibit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Form</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Date of Filing</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Number</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Herewith</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">3.1</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a style="-sec-extract:exhibit;font-family:'Arial','Helvetica','sans-serif';font-size:9pt;" href="https://www.sec.gov/Archives/edgar/data/1027838/000110465919028209/a19-9664_1ex3d2.htm"><span style="font-style:normal;font-weight:normal;">Amended and Restated Certificate of Incorporation, as amended through May 9, 2019</span></a></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">8-K</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">05/09/2019</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">3.2</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">3.2</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a style="-sec-extract:exhibit;font-family:'Arial','Helvetica','sans-serif';font-size:9pt;" href="https://www.sec.gov/Archives/edgar/data/1027838/000110465924059336/tm2413966d1_ex3-1.htm"><span style="font-style:normal;font-weight:normal;">Certificate of Amendment to Amended and Restated Certificate of Incorporation, dated May 8, 2024</span></a></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">8-K</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">05/09/2024</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">3.1</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">3.3</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a style="-sec-extract:exhibit;font-family:'Arial','Helvetica','sans-serif';font-size:9pt;" href="tcmd-20240630xex3d3.htm"><span style="font-style:normal;font-weight:normal;">Amended and Restated Certificate of Incorporation, conformed version reflecting all amendments through May 8, 2024</span></a></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">X</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">3.4</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a style="-sec-extract:exhibit;font-family:'Arial','Helvetica','sans-serif';font-size:9pt;" href="https://www.sec.gov/Archives/edgar/data/1027838/000155837023001580/tcmd-20221231xex3d2.htm"><span style="font-style:normal;font-weight:normal;">Amended and Restated By-laws, effective December 19, 2022</span></a></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">10-K</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">02/21/2023</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">3.2</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">10.1</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a style="-sec-extract:exhibit;font-family:'Arial','Helvetica','sans-serif';font-size:9pt;" href="https://www.sec.gov/Archives/edgar/data/1027838/000110465924050589/tm2412326d1_ex10-1.htm"><span style="font-style:normal;font-weight:normal;">Offer Letter between Sheri L. Dodd and Tactile Systems Technology, Inc., dated April 23, 2024</span></a></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">8-K</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">04/23/2024</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">10.1</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">10.2</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><a style="-sec-extract:exhibit;font-family:'Arial','Helvetica','sans-serif';" href="https://www.sec.gov/Archives/edgar/data/1027838/000110465924050589/tm2412326d1_ex10-2.htm"><span style="font-style:normal;font-weight:normal;">Form of Confidentiality, Assignment of Intellectual Property and Restrictive Covenants Agreement</span></a><span style="font-family:'Arial','Helvetica','sans-serif';"> </span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">8-K</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">04/23/2024</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">10.2</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">10.3</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a style="-sec-extract:exhibit;font-family:'Arial','Helvetica','sans-serif';font-size:9pt;" href="https://www.sec.gov/Archives/edgar/data/1027838/000110465924050589/tm2412326d1_ex10-4.htm"><span style="font-style:normal;font-weight:normal;">Transition Letter Agreement between Daniel L. Reuvers and Tactile Systems Technology, Inc., dated April 23, 2024</span></a></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">8-K</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">04/23/2024</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">10.4</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">10.4</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a style="-sec-extract:exhibit;font-family:'Arial','Helvetica','sans-serif';font-size:9pt;" href="tcmd-20240630xex10d4.htm"><span style="font-style:normal;font-weight:normal;">Clarification Letter between Daniel L. Reuvers and Tactile Systems Technology, Inc., dated June 20, 2024</span></a></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">X</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">31.1</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a style="-sec-extract:exhibit;font-family:'Arial','Helvetica','sans-serif';font-size:9pt;" href="tcmd-20240630xex31d1.htm"><span style="font-style:normal;font-weight:normal;">Certification of Principal Executive Officer pursuant to Rule 13a-14(a) / 15d-14(a) of the Securities Exchange Act of 1934, as amended</span></a></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">X</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">31.2</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a style="-sec-extract:exhibit;font-family:'Arial','Helvetica','sans-serif';font-size:9pt;" href="tcmd-20240630xex31d2.htm"><span style="font-style:normal;font-weight:normal;">Certification of Principal Financial Officer pursuant to Rule 13a-14(a) / 15d-14(a) of the Securities Exchange Act of 1934, as amended</span></a></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">X</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">32.1</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a style="-sec-extract:exhibit;font-family:'Arial','Helvetica','sans-serif';font-size:9pt;" href="tcmd-20240630xex32d1.htm"><span style="font-style:normal;font-weight:normal;">Certification of Principal Executive Officer pursuant to 18 U.S.C. &#167;1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002</span></a></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">X</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">32.2</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a style="-sec-extract:exhibit;font-family:'Arial','Helvetica','sans-serif';font-size:9pt;" href="tcmd-20240630xex32d2.htm"><span style="font-style:normal;font-weight:normal;">Certification of Principal Financial Officer pursuant to 18 U.S.C. &#167;1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002</span></a></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">X</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">101.1</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Inline XBRL for the following financial statements from the Company&#8217;s Quarterly Report on Form 10-Q for the quarter ended June 30, 2024: (i) Balance Sheets, (ii) Statements of Operations, (iii) Statements of Stockholders&#8217; Equity, (iv) Statements of Cash Flows, and (v) Notes to the Condensed Consolidated Financial Statements; and for the information set forth in Part II, Item 5.</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">X</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">104.1</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cover page Interactive Data File (formatted as Inline XBRL and contained in Exhibit 101.1)</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">X</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:8.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:43.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:6.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">&#8203;</span></p></td></tr></table></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">35</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 18pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a><span style="color:#0563c1;"> </span></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;visibility:hidden;">&#8203;</span></p><a id="_d6f330e2_bf10_48ee_9e97_c5eff9aab112"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:center;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">SIGNATURES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Pursuant to the requirements of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned thereunto duly authorized.</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:48.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;width:4.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"></div></div></td><td style="vertical-align:bottom;width:44.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.76%;margin:0pt;padding:0pt;"/><td style="vertical-align:bottom;white-space:nowrap;width:2.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;font-weight:bold;white-space:pre-wrap;">  </b><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;width:48.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Tactile Systems Technology, Inc.</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:12pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:48.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:12pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Date: August 5, 2024</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">By:</span></p></td><td style="vertical-align:bottom;width:44.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">/s/ </span><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">Elaine M. Birkemeyer</i></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.76%;margin:0pt;padding:0pt;"/><td style="vertical-align:bottom;white-space:nowrap;width:2.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.01%;margin:0pt;padding:0pt;"/><td style="vertical-align:bottom;width:44.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Elaine M. Birkemeyer</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.76%;margin:0pt;padding:0pt;"/><td style="vertical-align:bottom;white-space:nowrap;width:2.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.01%;margin:0pt;padding:0pt;"/><td style="vertical-align:bottom;width:44.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Chief Financial Officer</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.76%;margin:0pt;padding:0pt;"/><td style="vertical-align:bottom;white-space:nowrap;width:2.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.01%;margin:0pt;padding:0pt;"/><td style="vertical-align:bottom;width:44.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(Principal financial and accounting officer)</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></div><div style="clear:both;display:table;margin-bottom:27.35pt;min-height:36pt;width:100%;"><div style="display:table-cell;vertical-align:bottom;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">36</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;margin-left:10.35%;margin-right:10.35%;margin-top:30pt;page-break-after:avoid;width:79.3%;border:0;"></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-3.3
<SEQUENCE>2
<FILENAME>tcmd-20240630xex3d3.htm
<DESCRIPTION>EX-3.3
<TEXT>
<!--Enhanced HTML document created with Toppan Merrill Bridge  10.6.125.0--><!--Created on: 8/5/2024 03:21:06 PM (UTC)--><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta charset="UTF-8"><title></title></head><body><div style="margin-top:30pt;"></div><div style="max-width:100%;padding-left:11.76%;padding-right:11.76%;position:relative;"><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:right;margin:0pt;"><b style="font-family:'Times New Roman Bold';font-weight:bold;">Exhibit 3.3</b></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-family:'Times New Roman Bold';font-weight:bold;">AMENDED AND RESTATED</b></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-family:'Times New Roman Bold';font-weight:bold;">CERTIFICATE OF INCORPORATION</b></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-family:'Times New Roman Bold';font-weight:bold;">OF</b></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-family:'Times New Roman Bold';font-weight:bold;">TACTILE SYSTEMS TECHNOLOGY, INC.</b></p><p style="font-family:'Aptos';font-size:12pt;line-height:1.19;text-align:justify;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';line-height:1.38;margin-bottom:8pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;">(Conformed Version Reflecting All Amendments Through May 8, 2024)</b></p><p style="font-family:'Aptos';font-size:12pt;line-height:1.19;text-align:center;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:11pt;line-height:1.38;margin-bottom:8pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:center;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">ARTICLE 1</b><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;"><br></b><b style="font-family:'Times New Roman Bold';font-variant:small-caps;font-weight:bold;">Name</b></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><font style="font-family:'Times New Roman','Times','serif';">The name of the Corporation is Tactile Systems Technology, Inc.</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:center;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">ARTICLE 2</b><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;"><br></b><b style="font-family:'Times New Roman Bold';font-variant:small-caps;font-weight:bold;">Registered Office</b></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><font style="font-family:'Times New Roman','Times','serif';">The address of the Corporation&#8217;s registered office in the State of Delaware is 2711 Centerville Road, Suite 400, Wilmington, Delaware 19808, located in New Castle County. The name of the Corporation&#8217;s registered agent for service of process at such address is Corporation Service Company.</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:center;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">ARTICLE 3</b><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;"><br></b><b style="font-family:'Times New Roman Bold';font-variant:small-caps;font-weight:bold;">Purpose</b></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 0pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Purposes</u><font style="font-family:'Times New Roman','Times','serif';">. The Corporation will have general business purposes in accordance with the laws of the State of Delaware.</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 0pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Powers</u><font style="font-family:'Times New Roman','Times','serif';">. The Corporation will have and may exercise all the powers granted or available under the laws of the State of Delaware and laws amendatory thereof and supplementary thereto, including all powers necessary or convenient to effect any or all of the business purposes for which the Corporation is incorporated.</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:center;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">ARTICLE 4</b><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;"><br></b><b style="font-family:'Times New Roman Bold';font-variant:small-caps;font-weight:bold;">Stock</b></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 0pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Authorized Capital Stock</u><font style="font-family:'Times New Roman','Times','serif';">. The Corporation shall be authorized to issue 350,000,000 shares of capital stock, of which 300,000,000 shares shall be shares of common stock, par value $0.001 per share (the &#8220;</font><i style="font-family:'Times New Roman','Times','serif';font-style:italic;">Common Stock</i><font style="font-family:'Times New Roman','Times','serif';">&#8221;), and 50,000,000 shares shall be shares of preferred stock, par value $0.001 per share (the &#8220;</font><i style="font-family:'Times New Roman','Times','serif';font-style:italic;">Preferred Stock</i><font style="font-family:'Times New Roman','Times','serif';">&#8221;).</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 0pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Common Stock</u><font style="font-family:'Times New Roman','Times','serif';">. Except as otherwise provided by law or by the resolution or resolutions adopted by the board of directors of the Corporation designating the rights, powers and preferences of any series of Preferred Stock, the Common Stock shall have the exclusive right to vote for the election of directors and for all other purposes. All shares of Common Stock will be voting shares and will be entitled to one vote per share. There shall be no cumulative voting.</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Preferred Stock Rights</u><font style="font-family:'Times New Roman','Times','serif';">. Shares of Preferred Stock may be issued from time to time in one or more series. The board of directors of the Corporation is hereby authorized by resolution or resolutions to fix the voting rights, if any, designations, powers, preferences and the relative, participation, optional or other rights, if any, and the qualifications, limitations or restrictions thereof, of any unissued series of Preferred Stock, to fix the number of shares constituting such series, and to increase or </font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:11.76%;margin-right:11.76%;margin-top:30pt;page-break-after:always;width:76.47%;border-width:0;"><div style="max-width:100%;padding-left:11.76%;padding-right:11.76%;position:relative;"><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:justify;margin:0pt 0pt 12pt 36pt;"><font style="font-family:'Times New Roman','Times','serif';">decrease the number of shares of any such series (but not below the number of shares thereof then outstanding).</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:center;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">ARTICLE 5</b><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;"><br></b><b style="font-family:'Times New Roman Bold';font-variant:small-caps;font-weight:bold;">Board of Directors</b></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 0pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Number of Directors; Vacancies and Removal.</u></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 36pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Number</u><font style="font-family:'Times New Roman','Times','serif';">. Except as otherwise provided by the resolution or resolutions adopted by the board of directors of the Corporation designating the rights, powers and preferences of any series of Preferred Stock, the number of directors of the Corporation shall be fixed, and may be increased or decreased from time to time, exclusively by the board of directors.</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 36pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Removal</u><font style="font-family:'Times New Roman','Times','serif';">. Subject to the rights, if any, of any series of Preferred Stock to elect directors and to remove any director whom the holders of any such series have the right to elect, any director (including persons elected by directors to fill vacancies in the board of directors) may be removed from office (i) only with cause and (ii) only by the affirmative vote of the holders of 75% or more of the outstanding shares of capital stock then entitled to vote at an election of directors. At least 45 days prior to any annual or special meeting of stockholders at which it is proposed that any director be removed from office, written notice of such proposed removal and the alleged grounds thereof shall be sent to the director whose removal will be considered at the meeting.</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 0pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">No Written Ballot</u><font style="font-family:'Times New Roman','Times','serif';">. Unless and except to the extent that the by-laws of the Corporation shall so require, the election of directors of the Corporation need not be by written ballot.</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:center;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">ARTICLE 6</b><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;"><br></b><b style="font-family:'Times New Roman Bold';font-variant:small-caps;font-weight:bold;">By-Laws</b></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><font style="font-family:'Times New Roman','Times','serif';">In furtherance and not in limitation of the powers conferred by law, the Board of Directors is expressly authorized to adopt, amend and repeal the by-laws of the Corporation, subject to the power of the holders of capital stock of the Corporation to adopt, amend or repeal the by-laws; provided, however, that, with respect to the power of holders of the capital stock to adopt, amend and repeal by-laws of the Corporation, notwithstanding any other provision of the by-laws or any provision of law which might otherwise permit a lesser vote or no vote, but in addition to any affirmative vote of the holders of any particular class or series of the capital stock of the Corporation required by law, the by-laws or any Preferred Stock, the affirmative vote of the holders of at least a majority of the voting power of all of the then-outstanding shares entitled to vote generally in the election of directors, voting together as a single class, shall be required to adopt, amend or repeal any provision of the by-laws of the Corporation.</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:center;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">ARTICLE 7</b><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;"><br></b><b style="font-family:'Times New Roman Bold';font-variant:small-caps;font-weight:bold;">Amending the Certificate of Incorporation</b></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><font style="font-family:'Times New Roman','Times','serif';">The Corporation reserves the right at any time from time to time to amend, alter, change or repeal any provision contained in this Certificate of Incorporation, and any other provisions authorized by the laws of the State of Delaware at the time in force may be added or inserted, in the manner now or hereafter prescribed by law. All rights, preferences and privileges of whatsoever nature conferred upon stockholders, directors or any other persons whomsoever by and pursuant to this Certificate of Incorporation in its present form or as hereafter amended are granted subject to the right reserved in this Article.</font></p><p style="font-family:'Aptos';font-size:12pt;line-height:1.19;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:11pt;line-height:1.38;margin-bottom:8pt;visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:11.76%;margin-right:11.76%;margin-top:30pt;page-break-after:always;width:76.47%;border-width:0;"><div style="max-width:100%;padding-left:11.76%;padding-right:11.76%;position:relative;"><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Aptos';font-size:12pt;line-height:1.19;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:11pt;line-height:1.38;margin-bottom:8pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:center;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">ARTICLE 8</b><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;"><br></b><b style="font-family:'Times New Roman Bold';font-variant:small-caps;font-weight:bold;">Director and Officer Liability; indemnification and Insurance</b></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 0pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Elimination of Certain Liability of Directors and Officers</u><font style="font-family:'Times New Roman','Times','serif';">. The personal liability of the directors and the officers of the Corporation shall be eliminated to the fullest extent permitted by law. If the DGCL is amended to authorize corporate action further eliminating or limiting the personal liability of directors or officers, then the liability of a director or an officer of the Corporation shall be eliminated or limited to the fullest extent permitted by the DGCL, as so amended.</font><font style="font-family:'Times New Roman','Times','serif';font-size:12pt;"> </font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 0pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Indemnification.</u></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 36pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Right to Indemnification</u><font style="font-family:'Times New Roman','Times','serif';">. Each person who was or is made a party or is threatened to be made a party to or is involved in any action, suit or proceeding, whether civil, criminal, administrative or investigative (hereinafter a &#8220;</font><i style="font-family:'Times New Roman','Times','serif';font-style:italic;">proceeding</i><font style="font-family:'Times New Roman','Times','serif';">&#8221;), by reason of the fact that he or she, or a person of whom he or she is the legal representative, is or was a director or officer of the Corporation or is or was serving at the request of the Corporation as a director, officer, employee or agent of another corporation or of a partnership, joint venture, limited liability company, trust or other enterprise, including service with respect to employee benefit plans maintained or sponsored by the Corporation, whether the basis of such proceeding is alleged action in an official capacity as a director, officer, employee or agent or in any other capacity while serving as a director, officer, employee or agent, shall be indemnified and held harmless by the Corporation to the fullest extent authorized by the DGCL, as the same exists or may hereafter be amended (but, in the case of any such amendment, to the fullest extent permitted by law, only to the extent that such amendment permits the Corporation to provide broader indemnification rights than said law permitted the Corporation to provide prior to such amendment), against all expense, liability and loss (including attorneys&#8217; fees, judgments, fines, amounts paid or to be paid in settlement, and excise taxes or penalties arising under the Employee Retirement Income Security Act of 1974) reasonably incurred or suffered by such person in connection therewith and such indemnification shall continue as to a person who has ceased to be a director, officer, employee or agent and shall inure to the benefit of his or her heirs, executors and administrators; </font><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">provided</u><font style="font-family:'Times New Roman','Times','serif';">, </font><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">however</u><font style="font-family:'Times New Roman','Times','serif';">, that, except as provided in paragraph (b) below, the Corporation shall indemnify any such person seeking indemnification in connection with a proceeding (or part thereof) initiated by such person only if such proceeding (or part thereof) was authorized by the board of directors of the Corporation. The right to indemnification conferred in this Article shall be a contract right and shall include the right to be paid by the Corporation the expenses incurred in defending any such proceeding in advance of its final disposition; provided, however, that, if the DGCL requires, the payment of such expenses incurred by a director or officer in his or her capacity as a director or officer (and not in any other capacity in which service was or is rendered by such person while a director or officer, including, without limitation, service to an employee benefit plan) in advance of the final disposition of a proceeding, shall be made only upon delivery to the Corporation of an undertaking, by or on behalf of such director or officer, to repay all amounts so advanced if it shall ultimately be determined that such director or officer is not entitled to be indemnified under this Article or otherwise. The Corporation may, by action of the board of directors, provide indemnification to employees and agents of the Corporation with the same scope and effect as the foregoing indemnification of directors and officers.</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:11.76%;margin-right:11.76%;margin-top:30pt;page-break-after:always;width:76.47%;border-width:0;"><div style="max-width:100%;padding-left:11.76%;padding-right:11.76%;position:relative;"><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 36pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Right of Claimant to Bring Suit</u><font style="font-family:'Times New Roman','Times','serif';">. If a claim under paragraph (a) above is not paid in full by the Corporation within 30 days after a written claim has been received by the Corporation, the claimant may at any time thereafter bring suit against the Corporation to recover the unpaid amount of the claim and, if successful in whole or in part, the claimant shall be entitled to be paid also the expense of prosecuting such claim. It shall be a defense to any such action (other than an action brought to enforce a claim for expenses incurred in defending any proceeding in advance of its final disposition where the required undertaking, if any is required, has been tendered to the Corporation) that the claimant has not met the standards of conduct which make it permissible under the DGCL for the Corporation to indemnify the claimant for the amount claimed, but the burden of proving such defense shall be on the Corporation. Neither the failure of the Corporation (including its board of directors, independent legal counsel, or its stockholders) to have made a determination prior to the commencement of such action that indemnification of the claimant is proper in the circumstances because he or she has met the applicable standard of conduct set forth in the DGCL, nor an actual determination by the Corporation (including its board of directors, independent legal counsel, or its stockholders) that the claimant has not met such applicable standard of conduct, shall be a defense to the action or create a presumption that the claimant has not met the applicable standard of conduct.</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 36pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Non-Exclusivity of Rights</u><font style="font-family:'Times New Roman','Times','serif';">. The right to indemnification and the payment of expenses incurred in defending a proceeding in advance of its final disposition conferred in this Article shall not be exclusive of any other right which any person may have or hereafter acquire under any statute, provision of the Certificate of Incorporation (as it may be amended from time to time), by-law, agreement, vote of stockholders or disinterested directors or otherwise.</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 0pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Insurance</u><font style="font-family:'Times New Roman','Times','serif';">. The Corporation may maintain insurance, at its expense, to protect itself and any director, officer, employee or agent of the Corporation or another corporation, partnership, limited liability company, joint venture, trust or other enterprise against any such expense, liability or loss, whether or not the Corporation would have the power to indemnify such person against such expense, liability or loss under the DCGL.</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 0pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Amendment or Repeal</u><font style="font-family:'Times New Roman','Times','serif';">. No amendment, modification or repeal of this Article, adoption of any provision in this Certificate of Incorporation, or change in the law or interpretation of the law shall adversely affect any right or protection of any person under this Article 8 with respect to any act or omission that occurred prior to the time of such amendment, modification, repeal, adoption or change.</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:center;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">ARTICLE 9</b><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;"><br></b><b style="font-family:'Times New Roman Bold';font-variant:small-caps;font-weight:bold;">Stockholder Action</b></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 0pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">No Consent in Lieu of a Meeting</u><font style="font-family:'Times New Roman','Times','serif';">. The stockholders of the Corporation may not act by written consent in lieu of meeting.</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 0pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">No Right to Call a Special Meeting</u><font style="font-family:'Times New Roman','Times','serif';">. Except as otherwise required by law, special meetings of stockholders of the Corporation for any purpose or purposes may be called only by the Board of Directors, the Chairman of the Board or the Chief Executive Officer of the Corporation. Special meetings of the stockholders may not be called by any other person or persons.</font><font style="font-family:'Times New Roman','Times','serif';"><br></font><font style="font-family:'Times New Roman','Times','serif';visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:12pt;line-height:1.19;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><font style="font-family:'Times New Roman','Times','serif';line-height:1.38;margin-bottom:8pt;visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:11.76%;margin-right:11.76%;margin-top:30pt;page-break-after:always;width:76.47%;border-width:0;"><div style="max-width:100%;padding-left:11.76%;padding-right:11.76%;position:relative;"><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;text-align:center;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">ARTICLE 10</b><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;"><br></b><b style="font-family:'Times New Roman Bold';font-variant:small-caps;font-weight:bold;">Dispute Resolution</b></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.19;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 0pt;"><u style="font-family:'Times New Roman','Times','serif';text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Exclusive Forum</u><font style="font-family:'Times New Roman','Times','serif';">. Unless the Corporation consents in writing to the selection of an alternative forum, any or all internal corporate claims, which shall include claims, including claims in the right of the Corporation, (i) that are based upon a violation of a duty by a current or former director or officer or stockholder in such capacity, or (ii) as to which Title 8 of the DGCL confers jurisdiction upon the Delaware Court of Chancery, shall be brought solely and exclusively in a state court located within the State of Delaware (or, if no state court located in the State of Delaware has jurisdiction, the federal district court for the District of Delaware).</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-left:11.76%;margin-right:11.76%;margin-top:30pt;page-break-after:avoid;width:76.47%;border-width:0;"></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-10.4
<SEQUENCE>3
<FILENAME>tcmd-20240630xex10d4.htm
<DESCRIPTION>EX-10.4
<TEXT>
<!--Enhanced HTML document created with Toppan Merrill Bridge  10.6.125.0--><!--Created on: 8/5/2024 03:21:06 PM (UTC)--><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta charset="UTF-8"><title></title></head><body><div style="margin-top:30pt;"></div><div style="max-width:100%;padding-left:11.76%;padding-right:11.76%;position:relative;"><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Aptos';font-size:11pt;line-height:1.38;text-align:right;margin:0pt;"><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;">Exhibit 10.4</b></p><p style="font-family:'Aptos';font-size:12pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:11pt;margin-bottom:8pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';">June 20, 2024</font></p><p style="font-family:'Aptos';font-size:12pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:11pt;margin-bottom:8pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';">Daniel Reuvers (By E-Mail)</font></p><p style="font-family:'Aptos';font-size:12pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:11pt;margin-bottom:8pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';">Dear Dan, </font></p><p style="font-family:'Aptos';font-size:12pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:11pt;margin-bottom:8pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';white-space:pre-wrap;">As a supplement to that certain letter agreement, between you and Tactile Systems Technology, Inc. dated April 23, 2024 (the &#8220;Letter&#8221;), we wish to clarify the provision titled &#8220;Your Equity Rights&#8221;.  For the avoidance of doubt, we confirm that, unless otherwise modified by separate written agreement between you and the Company, the date that your employment with the Company ends as provided in the Letter (contemplated to be March 31, 2025 unless earlier terminated as provided in the Letter) (the &#8220;Employment Termination Date&#8221;) shall be deemed a termination of &#8220;Service&#8221; under the terms of your Equity Awards notwithstanding that you remain a director of the Company after the Employment Termination Date. Vesting of unvested performance share units and restricted stock units held by you on the Employment Termination Date shall cease as of such date and such Equity Awards will be forfeited, and any vested stock options held by you on that date will be exercisable for the period set forth therein as if your &#8220;Service&#8221; ended on the Employment Termination Date.</font></p><p style="font-family:'Aptos';font-size:12pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:11pt;margin-bottom:8pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';">Capitalized terms used herein and not otherwise defined shall have the meanings set forth in the Letter. The Letter shall remain and continue in full force and effect, as clarified by this letter.</font></p><p style="font-family:'Aptos';font-size:12pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:11pt;margin-bottom:8pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';">Please sign and return this countersigned letter to me to confirm your agreement to the clarifications to the Letter set forth in this letter.</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';">&#160;</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';">Sincerely,</font></p><p style="font-family:'Aptos';font-size:12pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:11pt;margin-bottom:8pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';">/s/ Elaine Birkemeyer</font></p><p style="font-family:'Aptos';font-size:12pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:11pt;margin-bottom:8pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';">Elaine Birkemeyer</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.38;margin:0pt;"><i style="font-family:'Times New Roman','Times','serif';font-style:italic;">Chief Financial Officer</i></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';">&#160;</font></p><p style="font-family:'Aptos';font-size:12pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:11pt;margin-bottom:8pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.38;margin:0pt;"><b style="font-family:'Times New Roman','Times','serif';font-weight:bold;">Acknowledged and Agreed as of the date first written above:</b></p><p style="font-family:'Aptos';font-size:12pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:11pt;font-weight:bold;margin-bottom:8pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';">/s/ Daniel Reuvers</font></p><p style="font-family:'Aptos';font-size:12pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:11pt;margin-bottom:8pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:11pt;line-height:1.38;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';">Daniel Reuvers</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-left:11.76%;margin-right:11.76%;margin-top:30pt;page-break-after:avoid;width:76.47%;border-width:0;"></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>4
<FILENAME>tcmd-20240630xex31d1.htm
<DESCRIPTION>EX-31.1
<TEXT>
<!--Enhanced HTML document created with Toppan Merrill Bridge  10.6.125.0--><!--Created on: 8/5/2024 03:21:07 PM (UTC)--><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta charset="UTF-8"><title></title></head><body><div style="margin-top:30pt;"></div><div style="max-width:100%;padding-left:10.29%;padding-right:10.29%;position:relative;"><div style="margin-top:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:0.07;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.3pt 0pt 0pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Exhibit 31.1</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.3pt 0pt 0pt 0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:5pt;font-weight:bold;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:9.5pt;font-weight:bold;text-align:center;margin:3.75pt 0pt 0pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">CERTIFICATION</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:2.3pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">PURSUANT TO</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:0.95pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">RULE</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:1.8pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">13a-14(a)/15d-14(a) OF</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:0.9pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">THE</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:1.25pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">SECURITIES</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:2.25pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">EXCHANGE</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:1.8pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">ACT OF</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:0.75pt;">&#160;</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">1934,</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:0.2pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">AS</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:1.1pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">ADOPTED</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:1.6pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">PURSUANT</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:1.65pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">TO</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:0.85pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">SECTION</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:0.75pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">302</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:1.15pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">OF</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:0.55pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">THE</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:0.9pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">SARBANES-OXLEY ACT</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:1.3pt;">&#160;</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">OF</b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;letter-spacing:0.8pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">2002</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.5pt 0pt 0pt 0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:9.5pt;margin:0pt 0pt 12pt 0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">I,</font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;letter-spacing:-0.35pt;"> </font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Sheri L. Dodd,</font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;letter-spacing:0.3pt;"> certify </font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">that:</font></p><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">1.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">I have reviewed this Quarterly Report on Form 10-Q of Tactile Systems Technology, Inc.;</font></td></tr></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">2.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">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></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">3.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">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></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">4.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">The registrant&#39;s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</font></td></tr></table><div style="margin-top:12pt;"></div><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:36pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">a.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">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></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:36pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">b.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">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></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:36pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">c.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">Evaluated the effectiveness of the registrant&#39;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></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:36pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">d.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">Disclosed in this report any change in the registrant&#39;s internal control over financial reporting that occurred during the registrant&#39;s most recent fiscal quarter (the registrant&#39;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#39;s internal control over financial reporting; and</font></td></tr></table><div style="margin-top:12pt;"></div><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">5.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">The registrant&#39;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#39;s auditors and the audit committee of the registrant&#39;s board of directors (or persons performing the equivalent functions):</font></td></tr></table><div style="margin-top:12pt;"></div><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:36pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">a.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">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&#39;s ability to record, process, summarize and report financial information; and</font></td></tr></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:36pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">b.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#39;s internal control over financial reporting.</font></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p><div align="left"><table style="border-collapse:collapse;font-size:16pt;height:max-content;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:50%;border-bottom:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">/s/</i><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;letter-spacing:1.25pt;"> </i><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">Sheri L.</i><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;letter-spacing:0.5pt;"> Dodd</i><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;"> </i></p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9.5pt;font-weight:bold;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:normal;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:50%;border-top:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9.5pt;font-weight:bold;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">Sheri L. Dodd</b></p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.1pt 0pt 0pt 0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.1pt 0pt 0pt 0pt;"><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">Chief</i><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;letter-spacing:0.05pt;"> </i><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">Executive Officer</i></p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';">Date: August 5</font><font style="font-family:'Arial','Helvetica','sans-serif';">, 2024</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:0.07;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-left:10.29%;margin-right:10.29%;margin-top:30pt;page-break-after:avoid;width:79.41%;border-width:0;"></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>5
<FILENAME>tcmd-20240630xex31d2.htm
<DESCRIPTION>EX-31.2
<TEXT>
<!--Enhanced HTML document created with Toppan Merrill Bridge  10.6.125.0--><!--Created on: 8/5/2024 03:21:07 PM (UTC)--><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta charset="UTF-8"><title></title></head><body><div style="margin-top:30pt;"></div><div style="max-width:100%;padding-left:10.29%;padding-right:10.29%;position:relative;"><div style="margin-top:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:0.07;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.3pt 0pt 0pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Exhibit 31.2</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.34pt 0pt 0pt 0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:5pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.34pt 0pt 0pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">CERTIFICATION</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:2.15pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">PURSUANT</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:0.1pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">TO</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:0.75pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">RULE</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:2pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">13a-14(a)/15d-14(a)</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:0.15pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">OF</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:0.95pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">THE</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:1.5pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">SECURITIES</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:2.15pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">EXCHANGE</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:2.3pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">ACT</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">OF</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:1.3pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">1934,</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:0.35pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">AS</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:0.85pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">ADOPTED</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:2pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">PURSUANT</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:2pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">TO</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:0.95pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">SECTION</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:0.85pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">302</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:1.4pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">OF</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:0.75pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">THE</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:0.9pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">SARBANES-OXLEY</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:0.4pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">ACT</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:1.45pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">OF</b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;letter-spacing:1pt;"> </b><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2002</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.3pt 0pt 0pt 0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:9.5pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">I,</font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;letter-spacing:0.6pt;"> </font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Elaine M. Birkemeyer,</font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;letter-spacing:1.25pt;"> </font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">certify</font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;letter-spacing:0.45pt;"> </font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">that:</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">1.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">I have reviewed this Quarterly Report on Form 10-Q of Tactile Systems Technology, Inc.;</font></td></tr></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">2.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">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></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">3.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">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></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">4.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">The registrant&#39;s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</font></td></tr></table><div style="margin-top:12pt;"></div><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:36pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">a.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">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></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:36pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">b.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">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></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:36pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">c.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">Evaluated the effectiveness of the registrant&#39;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></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:36pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">d.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">Disclosed in this report any change in the registrant&#39;s internal control over financial reporting that occurred during the registrant&#39;s most recent fiscal quarter (the registrant&#39;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#39;s internal control over financial reporting; and</font></td></tr></table><div style="margin-top:12pt;"></div><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">5.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">The registrant&#39;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#39;s auditors and the audit committee of the registrant&#39;s board of directors (or persons performing the equivalent functions):</font></td></tr></table><div style="margin-top:12pt;"></div><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:36pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">a.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">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&#39;s ability to record, process, summarize and report financial information; and</font></td></tr></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:36pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">b.</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#39;s internal control over financial reporting.</font></td></tr></table><div style="margin-top:12pt;"></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p><div align="left"><table style="border-collapse:collapse;font-size:16pt;height:max-content;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:50%;border-bottom:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">/s/ Elaine M. Birkemeyer</i></p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9.5pt;font-weight:bold;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:normal;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:50%;border-top:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9.5pt;font-weight:bold;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">Elaine M. Birkemeyer</b></p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.1pt 0pt 0pt 0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.1pt 0pt 0pt 0pt;"><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">Chief Financial Officer</i></p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';">Date: August 5</font><font style="font-family:'Arial','Helvetica','sans-serif';">, 2024</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:0.07;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-left:10.29%;margin-right:10.29%;margin-top:30pt;page-break-after:avoid;width:79.41%;border-width:0;"></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>6
<FILENAME>tcmd-20240630xex32d1.htm
<DESCRIPTION>EX-32.1
<TEXT>
<!--Enhanced HTML document created with Toppan Merrill Bridge  10.6.125.0--><!--Created on: 8/5/2024 03:21:25 PM (UTC)--><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta charset="UTF-8"><title></title></head><body><div style="margin-top:30pt;"></div><div style="max-width:100%;padding-left:10.29%;padding-right:10.29%;position:relative;"><div style="margin-top:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:0.07;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Exhibit 32.1</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;font-weight:bold;">CERTIFICATION PURSUANT TO 18 U.S.C. SECTION 1350,</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;font-weight:bold;">AS ADOPTED PURSUANT TO</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;font-weight:bold;">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';">In connection with the Quarterly Report on Form 10-Q of Tactile Systems Technology, Inc. (the &#8220;Company&#8221;) for the period ended June 30, 2024, as filed with the Securities and Exchange Commission on the date hereof (the &#8220;Report&#8221;), the undersigned, Sheri L. Dodd, Chief Executive Officer of the Company, hereby certifies, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that to her knowledge:</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:36pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">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></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 54pt;"><font style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:36pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(2)</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">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-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p><div align="left"><table style="border-collapse:collapse;font-size:16pt;height:max-content;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:50%;border-bottom:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">/s/</i><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;letter-spacing:1.25pt;"> </i><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">Sheri L. Dodd</i></p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9.5pt;font-weight:bold;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:normal;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:50%;border-top:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9.5pt;font-weight:bold;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">Sheri L. Dodd</b></p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.1pt 0pt 0pt 0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.1pt 0pt 0pt 0pt;"><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">Chief</i><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;letter-spacing:0.05pt;"> </i><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">Executive Officer</i></p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';">Date: August 5</font><font style="font-family:'Arial','Helvetica','sans-serif';">, 2024</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:0.07;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-left:10.29%;margin-right:10.29%;margin-top:30pt;page-break-after:avoid;width:79.41%;border-width:0;"></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>7
<FILENAME>tcmd-20240630xex32d2.htm
<DESCRIPTION>EX-32.2
<TEXT>
<!--Enhanced HTML document created with Toppan Merrill Bridge  10.6.125.0--><!--Created on: 8/5/2024 03:21:27 PM (UTC)--><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta charset="UTF-8"><title></title></head><body><div style="margin-top:30pt;"></div><div style="max-width:100%;padding-left:10.29%;padding-right:10.29%;position:relative;"><div style="margin-top:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:0.07;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:9.5pt;font-weight:bold;text-align:right;margin:0.6pt 0pt 0pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">Exhibit 32.2</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:9.5pt;font-weight:bold;margin:0.6pt 0pt 0pt 0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:normal;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:9.5pt;font-weight:bold;text-align:center;margin:0.6pt 0pt 0pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;font-weight:bold;">CERTIFICATION PURSUANT TO 18 U.S.C. SECTION 1350,</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:9.5pt;font-weight:bold;text-align:center;margin:0.6pt 0pt 0pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;font-weight:bold;">AS ADOPTED PURSUANT TO</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:9.5pt;font-weight:bold;text-align:center;margin:0.6pt 0pt 0pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;font-weight:bold;">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:9.5pt;font-weight:bold;margin:0.6pt 0pt 0pt 0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:normal;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';">In connection with the Quarterly Report on Form 10-Q of Tactile Systems Technology, Inc. (the &#8220;Company&#8221;) for the period ended June 30, 2024, as filed with the Securities and Exchange Commission on the date hereof (the &#8220;Report&#8221;), the undersigned, Elaine M. Birkemeyer, Chief Financial Officer of the Company, hereby certifies, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that to her knowledge: </font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:36pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">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></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 54pt;"><font style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:36pt;"></td><td style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(2)</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">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-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p><div align="left"><table style="border-collapse:collapse;font-size:16pt;height:max-content;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.1pt 0pt 0pt 0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:50%;border-bottom:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.1pt 0pt 0pt 0pt;"><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">/s/ Elaine M. Birkemeyer</i></p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.1pt 0pt 0pt 0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:50%;border-top:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.1pt 0pt 0pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Elaine M. Birkemeyer</b></p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.1pt 0pt 0pt 0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.1pt 0pt 0pt 0pt;"><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">Chief Financial Officer</i></p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:9.5pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Date: </font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">August 5, 2024</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:0.07;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-left:10.29%;margin-right:10.29%;margin-top:30pt;page-break-after:avoid;width:79.41%;border-width:0;"></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>8
<FILENAME>tcmd-20240630.xsd
<DESCRIPTION>EX-101.SCH
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--XBRL document created with Toppan Merrill Bridge  10.7.0.1 -->
<!--Based on XBRL 2.1-->
<!--Created on: 8/5/2024 3:21:29 PM-->
<!--Modified on: 8/5/2024 3:21:29 PM-->
<xsd:schema xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" targetNamespace="http://www.tactilemedical.com/20240630" elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:srt-types="http://fasb.org/srt-types/2024" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:tcmd="http://www.tactilemedical.com/20240630" xmlns:enum2="http://xbrl.org/2020/extensible-enumerations-2.0" xmlns:currency="http://xbrl.sec.gov/currency/2024" xmlns:us-roles="http://fasb.org/us-roles/2024" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:xl="http://www.xbrl.org/2003/XLink" xmlns:sic="http://xbrl.sec.gov/sic/2024" xmlns:us-types="http://fasb.org/us-types/2024" xmlns:srt-roles="http://fasb.org/srt-roles/2024" xmlns:stpr="http://xbrl.sec.gov/stpr/2024" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:us-gaap="http://fasb.org/us-gaap/2024" xmlns:exch="http://xbrl.sec.gov/exch/2024" xmlns:naics="http://xbrl.sec.gov/naics/2024" xmlns:country="http://xbrl.sec.gov/country/2024" xmlns:negated="http://www.xbrl.org/2009/role/negated" xmlns:attributeFormDefault="unqualified" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:srt="http://fasb.org/srt/2024" xmlns:deprecated="http://www.xbrl.org/2009/role/deprecated" xmlns:net="http://www.xbrl.org/2009/role/net" xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns:dtr="http://www.xbrl.org/2009/dtr" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:us-gaap-ebp="http://fasb.org/us-gaap-ebp/2024" xmlns:ecd="http://xbrl.sec.gov/ecd/2024" xmlns:ecd-sub="http://xbrl.sec.gov/ecd-sub/2024">
  <xsd:annotation>
    <xsd:appinfo>
      <link:roleType roleURI="http://www.tactilemedical.com/role/DisclosureStandardAndCustomAxisDomainDefaults" id="DisclosureStandardAndCustomAxisDomainDefaults">
        <link:definition>99900 - Disclosure - Standard And Custom Axis Domain Defaults</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets" id="StatementCondensedConsolidatedBalanceSheets">
        <link:definition>995200100 - Statement - Condensed 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://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations" id="StatementCondensedConsolidatedStatementsOfOperations">
        <link:definition>995200200 - Statement - Condensed Consolidated Statements of Operations</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" id="StatementCondensedConsolidatedStatementsOfCashFlows">
        <link:definition>995200400 - Statement - Condensed 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://www.tactilemedical.com/role/DisclosureInventoriesDetails" id="DisclosureInventoriesDetails">
        <link:definition>99940401 - Disclosure - Inventories (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://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails" id="DisclosureGoodwillAndIntangibleAssetsDetails">
        <link:definition>99940501 - Disclosure - Goodwill And Intangible 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://www.tactilemedical.com/role/DisclosurePatentCostsNetDetailsCalc2" id="DisclosurePatentCostsNetDetailsCalc2">
        <link:definition>40502 - Disclosure - Patent Costs, Net (Details) (Calc 2)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.tactilemedical.com/role/DisclosureAccruedExpensesDetails" id="DisclosureAccruedExpensesDetails">
        <link:definition>99940601 - Disclosure - 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://www.tactilemedical.com/role/DisclosureWarrantyReservesDetails" id="DisclosureWarrantyReservesDetails">
        <link:definition>99940701 - Disclosure - Warranty Reserves (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://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails" id="DisclosureCreditAgreementMaturitiesOfDebtDetails">
        <link:definition>99940802 - Disclosure - Credit Agreement - Maturities of Debt (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://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails" id="DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails">
        <link:definition>99940902 - Disclosure - Commitments and Contingencies - Lease related 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://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails" id="DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails">
        <link:definition>99940903 - Disclosure - Commitments and Contingencies - Undiscounted cash flows (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://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetailsCalc2" id="DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetailsCalc2">
        <link:definition>41004 - Disclosure - Commitments and Contingencies - Undiscounted cash flows (Details) - Calc2</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.tactilemedical.com/role/DisclosureRevenueDetails" id="DisclosureRevenueDetails">
        <link:definition>99941101 - Disclosure - 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://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetailsCalc2" id="DisclosureCreditAgreementMaturitiesOfDebtDetailsCalc2">
        <link:definition>41102 - Disclosure - Credit Agreement - Maturities of Debt (Details) - calc 2</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation" id="DocumentDocumentAndEntityInformation">
        <link:definition>995200090 - Document - Document and Entity Information</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" id="StatementCondensedConsolidatedBalanceSheetsParenthetical">
        <link:definition>995200105 - Statement - Condensed 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://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" id="StatementCondensedConsolidatedStatementsOfStockholdersEquity">
        <link:definition>995200300 - Statement - Condensed Consolidated Statements of 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://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperations" id="DisclosureNatureOfBusinessAndOperations">
        <link:definition>995210101 - Disclosure - Nature of Business and Operations</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.tactilemedical.com/role/DisclosureBasisOfPresentation" id="DisclosureBasisOfPresentation">
        <link:definition>995210201 - Disclosure - 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://www.tactilemedical.com/role/DisclosureSummaryOfSignificantAccountingPolicies" id="DisclosureSummaryOfSignificantAccountingPolicies">
        <link:definition>995210301 - 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://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssets" id="DisclosureGoodwillAndIntangibleAssets">
        <link:definition>995210501 - 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://www.tactilemedical.com/role/DisclosureAccruedExpenses" id="DisclosureAccruedExpenses">
        <link:definition>995210601 - 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://www.tactilemedical.com/role/DisclosureCommitmentsAndContingencies" id="DisclosureCommitmentsAndContingencies">
        <link:definition>995210901 - 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://www.tactilemedical.com/role/DisclosureStockholdersEquity" id="DisclosureStockholdersEquity">
        <link:definition>995211001 - Disclosure - 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://www.tactilemedical.com/role/DisclosureIncomeTaxes" id="DisclosureIncomeTaxes">
        <link:definition>995211201 - 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://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShare" id="DisclosureNetIncomeLossPerShare">
        <link:definition>995211301 - Disclosure - Net Income (Loss) 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://www.tactilemedical.com/role/DisclosureFairValueMeasurements" id="DisclosureFairValueMeasurements">
        <link:definition>995211401 - 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://www.tactilemedical.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" id="DisclosureSummaryOfSignificantAccountingPoliciesPolicies">
        <link:definition>99920302 - 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://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsTables" id="DisclosureGoodwillAndIntangibleAssetsTables">
        <link:definition>99930503 - 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://www.tactilemedical.com/role/DisclosureAccruedExpensesTables" id="DisclosureAccruedExpensesTables">
        <link:definition>99930603 - 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://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesTables" id="DisclosureCommitmentsAndContingenciesTables">
        <link:definition>99930903 - 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://www.tactilemedical.com/role/DisclosureStockholdersEquityTables" id="DisclosureStockholdersEquityTables">
        <link:definition>99931003 - Disclosure - Stockholders' Equity (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://www.tactilemedical.com/role/DisclosureNetIncomeLossPerSharTables" id="DisclosureNetIncomeLossPerSharTables">
        <link:definition>99931303 - Disclosure - Net Income (Loss) Per Shar (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://www.tactilemedical.com/role/DisclosureFairValueMeasurementsTables" id="DisclosureFairValueMeasurementsTables">
        <link:definition>99931403 - 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://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails" id="DisclosureNatureOfBusinessAndOperationsDetails">
        <link:definition>99940101 - Disclosure - Nature of Business and Operations (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://www.tactilemedical.com/role/DisclosureCreditAgreementDetails" id="DisclosureCreditAgreementDetails">
        <link:definition>99940801 - Disclosure - Credit Agreement (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://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails" id="DisclosureCommitmentsAndContingenciesLeaseObligationsDetails">
        <link:definition>99940901 - Disclosure - Commitments and Contingencies - Lease Obligations (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://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails" id="DisclosureCommitmentsAndContingenciesMajorVendorsDetails">
        <link:definition>99940905 - Disclosure - Commitments and Contingencies - Major Vendors (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://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesRetirementPlanDetails" id="DisclosureCommitmentsAndContingenciesRetirementPlanDetails">
        <link:definition>99940907 - Disclosure - Commitments and Contingencies - Retirement Plan (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://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails" id="DisclosureCommitmentsAndContingenciesLegalProceedingsDetails">
        <link:definition>99940908 - Disclosure - Commitments and Contingencies - Legal Proceedings (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://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails" id="DisclosureStockholdersEquityStockBasedCompensationDetails">
        <link:definition>99941001 - Disclosure - Stockholders' Equity - Stock-Based Compensation (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://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails" id="DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails">
        <link:definition>99941002 - Disclosure - Stockholders' Equity - Stock Options and Restricted 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://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails" id="DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails">
        <link:definition>99941003 - Disclosure - Stockholders' Equity - Employee Stock Purchase Plan (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://www.tactilemedical.com/role/DisclosureIncomeTaxesDetails" id="DisclosureIncomeTaxesDetails">
        <link:definition>99941201 - Disclosure - Income Taxes (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://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareBasicAndDilutedNetIncomeLossPerShareDetails" id="DisclosureNetIncomeLossPerShareBasicAndDilutedNetIncomeLossPerShareDetails">
        <link:definition>99941301 - Disclosure - Net Income (Loss) Per Share - Basic and Diluted Net income (Loss) 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://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails" id="DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails">
        <link:definition>99941302 - Disclosure - Net Income (Loss) Per Share - Antidilutive Securities Excluded From Computation of 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://www.tactilemedical.com/role/DisclosureFairValueMeasurementsEarnOutLiabilityDetails" id="DisclosureFairValueMeasurementsEarnOutLiabilityDetails">
        <link:definition>99941401 - Disclosure - Fair Value Measurements - Earn out liability (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://www.tactilemedical.com/role/DisclosureFairValueMeasurementsFairValueHierarchyDetails" id="DisclosureFairValueMeasurementsFairValueHierarchyDetails">
        <link:definition>99941402 - Disclosure - Fair Value Measurements - Fair Value Hierarchy (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://www.tactilemedical.com/role/DisclosureInventories" id="DisclosureInventories">
        <link:definition>995210401 - Disclosure - Inventories</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.tactilemedical.com/role/DisclosureWarrantyReserves" id="DisclosureWarrantyReserves">
        <link:definition>995210701 - Disclosure - Warranty Reserves</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.tactilemedical.com/role/DisclosureCreditAgreement" id="DisclosureCreditAgreement">
        <link:definition>995210801 - Disclosure - Credit Agreement</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.tactilemedical.com/role/DisclosureRevenue" id="DisclosureRevenue">
        <link:definition>995211101 - 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://www.tactilemedical.com/role/DisclosureInventoriesTables" id="DisclosureInventoriesTables">
        <link:definition>99930403 - Disclosure - Inventories (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://www.tactilemedical.com/role/DisclosureWarrantyReservesTables" id="DisclosureWarrantyReservesTables">
        <link:definition>99930703 - Disclosure - Warranty Reserves (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://www.tactilemedical.com/role/DisclosureCreditAgreementTables" id="DisclosureCreditAgreementTables">
        <link:definition>99930803 - Disclosure - Credit Agreement (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://www.tactilemedical.com/role/DisclosureRevenueTables" id="DisclosureRevenueTables">
        <link:definition>99931103 - 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://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseCommitmentsAndOperatingLeaseCostDetails" id="DisclosureCommitmentsAndContingenciesLeaseCommitmentsAndOperatingLeaseCostDetails">
        <link:definition>99940904 - Disclosure - Commitments and Contingencies - Lease commitments and operating lease cost (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://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesPurchaseCommitmentsDetails" id="DisclosureCommitmentsAndContingenciesPurchaseCommitmentsDetails">
        <link:definition>99940906 - Disclosure - Commitments and Contingencies - Purchase Commitments (Details)</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="tcmd-20240630_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, all" />
      <link:linkbaseRef xlink:type="simple" xlink:href="tcmd-20240630_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, all" />
      <link:linkbaseRef xlink:type="simple" xlink:href="tcmd-20240630_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, all" />
      <link:linkbaseRef xlink:type="simple" xlink:href="tcmd-20240630_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, all" />
    </xsd:appinfo>
  </xsd:annotation>
  <xsd:import namespace="https://xbrl.org/2023/calculation-1.1" schemaLocation="https://www.xbrl.org/2023/calculation-1.1.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/ecd/2024" schemaLocation="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/dei/2024" schemaLocation="https://xbrl.sec.gov/dei/2024/dei-2024.xsd" />
  <xsd:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
  <xsd:import namespace="http://fasb.org/us-roles/2024" schemaLocation="https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd" />
  <xsd:import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd" />
  <xsd:import namespace="http://www.xbrl.org/dtr/type/2022-03-31" schemaLocation="https://www.xbrl.org/dtr/type/2022-03-31/types.xsd" />
  <xsd:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd" />
  <xsd:import namespace="http://www.xbrl.org/2009/role/net" schemaLocation="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd" />
  <xsd:import namespace="http://fasb.org/us-gaap/2024" schemaLocation="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd" />
  <xsd:import namespace="http://fasb.org/srt/2024" schemaLocation="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/ecd-sub/2024" schemaLocation="https://xbrl.sec.gov/ecd/2024/ecd-sub-2024.xsd" />
  <xsd:element id="tcmd_EquityIncentivePlan2016Member" name="EquityIncentivePlan2016Member" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod" name="EmployeeStockPurchasePlanOfferingPeriodsPeriod" nillable="true" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="tcmd_MedicareAccountsReceivableNonCurrent" name="MedicareAccountsReceivableNonCurrent" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="debit" />
  <xsd:element id="tcmd_AccruedExpensesDisclosureCurrentTextBlock" name="AccruedExpensesDisclosureCurrentTextBlock" nillable="true" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="tcmd_NumberOfVendors" name="NumberOfVendors" nillable="true" type="xbrli:integerItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" />
  <xsd:element id="tcmd_DefinedContribution401kRetirementPlanMember" name="DefinedContribution401kRetirementPlanMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="tcmd_IncrementalSharesToBeIssuedPercentage" name="IncrementalSharesToBeIssuedPercentage" nillable="true" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="tcmd_IncrementalShareIncrease" name="IncrementalShareIncrease" nillable="true" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="tcmd_MedicareMember" name="MedicareMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage" nillable="true" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" />
  <xsd:element id="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber" nillable="true" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" />
  <xsd:element id="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod" nillable="true" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue" nillable="true" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="tcmd_EmployeeStockPurchasePlanMember" name="EmployeeStockPurchasePlanMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="tcmd_ExpenseRelatingToInitialPublicOffering" name="ExpenseRelatingToInitialPublicOffering" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="debit" />
  <xsd:element id="tcmd_AccruedTravelAndEntertainmentCurrent" name="AccruedTravelAndEntertainmentCurrent" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="credit" />
  <xsd:element id="tcmd_ScheduleOfAccruedExpensesTableTextBlock" name="ScheduleOfAccruedExpensesTableTextBlock" nillable="true" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="tcmd_NatureOfBusinessAndOperationAbstract" name="NatureOfBusinessAndOperationAbstract" nillable="true" type="xbrli:stringItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable" name="IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="debit" />
  <xsd:element id="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember" name="PerformanceBasedStockSettledRestrictedStockUnitsMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="tcmd_DefensiveIntangibleAssetsMember" name="DefensiveIntangibleAssetsMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="tcmd_TimeBasedRestrictedStockUnitsRsusMember" name="TimeBasedRestrictedStockUnitsRsusMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="tcmd_ScheduleOfRevenueFromThirdPartyPayersTableTextBlock" name="ScheduleOfRevenueFromThirdPartyPayersTableTextBlock" nillable="true" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="tcmd_VeteransAdministrationMember" name="VeteransAdministrationMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="tcmd_PrivateInsurersMember" name="PrivateInsurersMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="tcmd_PercentageOfRevenue" name="PercentageOfRevenue" nillable="true" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="tcmd_RentalProductServiceMember" name="RentalProductServiceMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="tcmd_IncreaseDecreaseInNetInvestmentInLease" name="IncreaseDecreaseInNetInvestmentInLease" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="credit" />
  <xsd:element id="tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset" name="IncreaseDecreaseInOperatingLeaseRightOfUseAsset" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="credit" />
  <xsd:element id="tcmd_AssetsAndLiabilitiesLesseeTableTextBlock" name="AssetsAndLiabilitiesLesseeTableTextBlock" nillable="true" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="tcmd_AccruedSalesAndUseTax" name="AccruedSalesAndUseTax" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="credit" />
  <xsd:element id="tcmd_CorporateHeadQuarterInitialLeaseMember" name="CorporateHeadQuarterInitialLeaseMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="tcmd_CorporateHeadQuarterSecondLeaseMember" name="CorporateHeadQuarterSecondLeaseMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="tcmd_AccruedClinicalStudiesExpensesCurrent" name="AccruedClinicalStudiesExpensesCurrent" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="credit" />
  <xsd:element id="tcmd_AdditionalOfficeSpaceAdded" name="AdditionalOfficeSpaceAdded" nillable="true" type="dtr-types:areaItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" />
  <xsd:element id="tcmd_CorporateHeadQuarterThirdLeaseMember" name="CorporateHeadQuarterThirdLeaseMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="tcmd_InTransitInventoryAccruedExpense" name="InTransitInventoryAccruedExpense" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="credit" />
  <xsd:element id="tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" name="FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="debit" />
  <xsd:element id="tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" name="LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="credit" />
  <xsd:element id="tcmd_VendorOneMember" name="VendorOneMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="tcmd_VendorTwoMember" name="VendorTwoMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element name="TermLoanMember" id="tcmd_TermLoanMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="LineOfCreditThresholdContingentIncreaseInBorrowingCapacity" id="tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="false" xbrli:balance="credit" />
  <xsd:element name="CreditAgreementTotalAggregatePrincipalAmount" id="tcmd_CreditAgreementTotalAggregatePrincipalAmount" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="instant" abstract="false" xbrli:balance="credit" />
  <xsd:element name="AfflovestPMember" id="tcmd_AfflovestPMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="DebtInstrumentLeverageRatioTierAxis" id="tcmd_DebtInstrumentLeverageRatioTierAxis" type="xbrli:stringItemType" substitutionGroup="xbrldt:dimensionItem" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="DebtInstrumentLeverageRatioTierDomain" id="tcmd_DebtInstrumentLeverageRatioTierDomain" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="DurableMedicalEquipmentDistributorsMember" id="tcmd_DurableMedicalEquipmentDistributorsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock" id="tcmd_NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="false" />
  <xsd:element name="AmortizationOfIntangibleAssetsAndEarnOuts" id="tcmd_AmortizationOfIntangibleAssetsAndEarnOuts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="false" xbrli:balance="debit" />
  <xsd:element name="DebtInstrumentPaymentOfMandatoryPrincipalPrepayment" id="tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="false" xbrli:balance="credit" />
  <xsd:element name="RentToPurchaseArrangementsRentalPeriod" id="tcmd_RentToPurchaseArrangementsRentalPeriod" type="xbrli:durationItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="false" />
  <xsd:element name="LymphedemaProductsMember" id="tcmd_LymphedemaProductsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="AirwayClearanceProductsMember" id="tcmd_AirwayClearanceProductsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="EarningsPerShareOtherDisclosureAbstract" id="tcmd_EarningsPerShareOtherDisclosureAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="FollowOnPublicOfferingMember" id="tcmd_FollowOnPublicOfferingMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods" id="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods" type="xbrli:integerItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="false" />
  <xsd:element name="ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" id="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="false" />
  <xsd:element name="TwoThousandTwentyThreePsuMember" id="tcmd_TwoThousandTwentyThreePsuMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="WeaverLawsuitMember" id="tcmd_WeaverLawsuitMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="NumberOfOfficerAndDirectors" id="tcmd_NumberOfOfficerAndDirectors" type="xbrli:integerItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="instant" abstract="false" />
  <xsd:element name="BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment" id="tcmd_BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="false" xbrli:balance="credit" />
  <xsd:element name="TwoThousandTwentyFourPsuMember" id="tcmd_TwoThousandTwentyFourPsuMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="TwoThousandTwentyFivePsuMember" id="tcmd_TwoThousandTwentyFivePsuMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="TwoThousandTwentySixPsuMember" id="tcmd_TwoThousandTwentySixPsuMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="KristieT.BurnsMember" id="tcmd_KristieT.BurnsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="WilliamW.BurkeMember" id="tcmd_WilliamW.BurkeMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="ElaineM.BirkemeyerMember" id="tcmd_ElaineM.BirkemeyerMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
  <xsd:element name="DanielL.ReuversMember" id="tcmd_DanielL.ReuversMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="true" />
</xsd:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>9
<FILENAME>tcmd-20240630_cal.xml
<DESCRIPTION>EX-101.CAL
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--XBRL document created with Toppan Merrill Bridge  10.7.0.1 -->
<!--Based on XBRL 2.1-->
<!--Created on: 8/5/2024 3:21:29 PM-->
<!--Modified on: 8/5/2024 3:21:29 PM-->
<link:linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#StatementCondensedConsolidatedBalanceSheets" roleURI="http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#StatementCondensedConsolidatedStatementsOfOperations" roleURI="http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#StatementCondensedConsolidatedStatementsOfCashFlows" roleURI="http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureInventoriesDetails" roleURI="http://www.tactilemedical.com/role/DisclosureInventoriesDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureGoodwillAndIntangibleAssetsDetails" roleURI="http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosurePatentCostsNetDetailsCalc2" roleURI="http://www.tactilemedical.com/role/DisclosurePatentCostsNetDetailsCalc2" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureAccruedExpensesDetails" roleURI="http://www.tactilemedical.com/role/DisclosureAccruedExpensesDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureWarrantyReservesDetails" roleURI="http://www.tactilemedical.com/role/DisclosureWarrantyReservesDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCreditAgreementMaturitiesOfDebtDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetailsCalc2" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetailsCalc2" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureRevenueDetails" roleURI="http://www.tactilemedical.com/role/DisclosureRevenueDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCreditAgreementMaturitiesOfDebtDetailsCalc2" roleURI="http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetailsCalc2" />
  <link:arcroleRef arcroleURI="https://xbrl.org/2023/arcrole/summation-item" xlink:type="simple" xlink:href="https://www.xbrl.org/2023/calculation-1.1.xsd#summation-item" />
  <link:calculationLink xlink:role="http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets" xlink:type="extended" xlink:title="995200100 - Statement - Condensed Consolidated Balance Sheets">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent_638584680860904984" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_AssetsCurrent_638584680860904984" order="1" use="optional" weight="1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_638584680860904984" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent_638584680860904984" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_638584680860904984" order="1" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent_638584680860904984" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent_638584680860904984" xlink:to="us-gaap_AccountsReceivableNetCurrent_638584680860904984" order="2" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet_638584680860904984" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent_638584680860904984" xlink:to="us-gaap_InventoryNet_638584680860904984" order="3" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetInvestmentInLease" xlink:label="us-gaap_NetInvestmentInLease_638584680860914982" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent_638584680860904984" xlink:to="us-gaap_NetInvestmentInLease_638584680860914982" order="4" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_638584680860914982" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent_638584680860904984" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_638584680860914982" order="5" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsNoncurrent" xlink:label="us-gaap_AssetsNoncurrent_638584680860914982" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_AssetsNoncurrent_638584680860914982" order="2" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_638584680860914982" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsNoncurrent_638584680860914982" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_638584680860914982" order="1" use="optional" weight="1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_638584680860914982" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsNoncurrent_638584680860914982" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_638584680860914982" order="2" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_638584680860914982" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsNoncurrent_638584680860914982" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_638584680860914982" order="3" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill_638584680860914982" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsNoncurrent_638584680860914982" xlink:to="us-gaap_Goodwill_638584680860914982" order="4" use="optional" weight="1" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_MedicareAccountsReceivableNonCurrent" xlink:label="tcmd_MedicareAccountsReceivableNonCurrent_638584680860924960" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsNoncurrent_638584680860914982" xlink:to="tcmd_MedicareAccountsReceivableNonCurrent_638584680860924960" order="5" use="optional" weight="1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet_638584680860924960" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsNoncurrent_638584680860914982" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet_638584680860924960" order="6" use="optional" weight="1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent_638584680860924960" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsNoncurrent_638584680860914982" xlink:to="us-gaap_OtherAssetsNoncurrent_638584680860924960" order="7" use="optional" weight="1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities_638584680860924960" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_Liabilities_638584680860924960" order="1" use="optional" weight="1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent_638584680860924960" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Liabilities_638584680860924960" xlink:to="us-gaap_LiabilitiesCurrent_638584680860924960" order="1" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent_638584680860934969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent_638584680860924960" xlink:to="us-gaap_AccountsPayableCurrent_638584680860934969" order="1" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NotesPayableCurrent" xlink:label="us-gaap_NotesPayableCurrent_638584680860934969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent_638584680860924960" xlink:to="us-gaap_NotesPayableCurrent_638584680860934969" order="2" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent_638584680860934969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent_638584680860924960" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent_638584680860934969" order="3" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent_638584680860934969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent_638584680860924960" xlink:to="us-gaap_AccruedLiabilitiesCurrent_638584680860934969" order="4" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="us-gaap_AccruedIncomeTaxesCurrent_638584680860934969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent_638584680860924960" xlink:to="us-gaap_AccruedIncomeTaxesCurrent_638584680860934969" order="5" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_638584680860934969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent_638584680860924960" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_638584680860934969" order="6" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesCurrent" xlink:label="us-gaap_OtherLiabilitiesCurrent_638584680860944965" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent_638584680860924960" xlink:to="us-gaap_OtherLiabilitiesCurrent_638584680860944965" order="7" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="us-gaap_LiabilitiesNoncurrent_638584680860944965" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Liabilities_638584680860924960" xlink:to="us-gaap_LiabilitiesNoncurrent_638584680860944965" order="2" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermNotesPayable" xlink:label="us-gaap_LongTermNotesPayable_638584680860944965" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesNoncurrent_638584680860944965" xlink:to="us-gaap_LongTermNotesPayable_638584680860944965" order="1" use="optional" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrualNoncurrent" xlink:label="us-gaap_ProductWarrantyAccrualNoncurrent_638584680860944965" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesNoncurrent_638584680860944965" xlink:to="us-gaap_ProductWarrantyAccrualNoncurrent_638584680860944965" order="2" use="optional" weight="1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedIncomeTaxesNoncurrent" xlink:label="us-gaap_AccruedIncomeTaxesNoncurrent_638584680860944965" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesNoncurrent_638584680860944965" xlink:to="us-gaap_AccruedIncomeTaxesNoncurrent_638584680860944965" order="3" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_638584680860944965" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesNoncurrent_638584680860944965" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_638584680860944965" order="4" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity_638584680860954965" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_StockholdersEquity_638584680860954965" order="2" use="optional" weight="1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue_638584680860954965" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity_638584680860954965" xlink:to="us-gaap_PreferredStockValue_638584680860954965" order="1" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue_638584680860954965" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity_638584680860954965" xlink:to="us-gaap_CommonStockValue_638584680860954965" order="2" use="optional" weight="1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital_638584680860954965" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity_638584680860954965" xlink:to="us-gaap_AdditionalPaidInCapital_638584680860954965" order="3" use="optional" weight="1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_638584680860954965" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity_638584680860954965" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit_638584680860954965" order="4" use="optional" weight="1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies_638584680860964960" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_CommitmentsAndContingencies_638584680860964960" order="3" use="optional" weight="1" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations" xlink:type="extended" xlink:title="995200200 - Statement - Condensed Consolidated Statements of Operations">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit_638584680860964960" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeTaxExpenseBenefit_638584680860964960" order="1" use="optional" weight="-1" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_638584680860964960" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_638584680860964960" order="2" use="optional" weight="1" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss_638584680860974985" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_638584680860964960" xlink:to="us-gaap_OperatingIncomeLoss_638584680860974985" order="1" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit_638584680860974985" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss_638584680860974985" xlink:to="us-gaap_GrossProfit_638584680860974985" order="1" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_638584680860974985" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_GrossProfit_638584680860974985" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_638584680860974985" order="1" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfRevenue" xlink:label="us-gaap_CostOfRevenue_638584680860974985" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_GrossProfit_638584680860974985" xlink:to="us-gaap_CostOfRevenue_638584680860974985" order="2" use="optional" weight="-1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses_638584680860974985" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss_638584680860974985" xlink:to="us-gaap_OperatingExpenses_638584680860974985" order="2" use="optional" weight="-1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="us-gaap_SellingAndMarketingExpense_638584680860974985" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingExpenses_638584680860974985" xlink:to="us-gaap_SellingAndMarketingExpense_638584680860974985" order="1" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense_638584680860974985" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingExpenses_638584680860974985" xlink:to="us-gaap_ResearchAndDevelopmentExpense_638584680860974985" order="2" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense_638584680860984980" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingExpenses_638584680860974985" xlink:to="us-gaap_GeneralAndAdministrativeExpense_638584680860984980" order="3" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AmortizationOfIntangibleAssetsAndEarnOuts" xlink:label="tcmd_AmortizationOfIntangibleAssetsAndEarnOuts_638584680860984980" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingExpenses_638584680860974985" xlink:to="tcmd_AmortizationOfIntangibleAssetsAndEarnOuts_638584680860984980" order="4" use="optional" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense_638584680860984980" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_638584680860964960" xlink:to="us-gaap_NonoperatingIncomeExpense_638584680860984980" order="2" use="optional" weight="1" priority="1" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" xlink:type="extended" xlink:title="995200400 - Statement - Condensed Consolidated Statements of Cash Flows">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" order="1" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss_638584680860994961" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" xlink:to="us-gaap_ProfitLoss_638584680860994961" order="1" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_638584680860994961" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_638584680860994961" order="2" use="optional" weight="-1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization_638584680860994961" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" xlink:to="us-gaap_DepreciationDepletionAndAmortization_638584680860994961" order="3" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCredits_638584680860994961" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" xlink:to="us-gaap_DeferredIncomeTaxesAndTaxCredits_638584680860994961" order="4" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation_638584680860994961" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" xlink:to="us-gaap_ShareBasedCompensation_638584680860994961" order="5" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesFairValueAdjustment" xlink:label="us-gaap_LiabilitiesFairValueAdjustment_638584680860994961" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" xlink:to="us-gaap_LiabilitiesFairValueAdjustment_638584680860994961" order="6" use="optional" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_638584680860994961" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_638584680860994961" order="7" use="optional" weight="-1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories_638584680861004964" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" xlink:to="us-gaap_IncreaseDecreaseInInventories_638584680861004964" order="8" use="optional" weight="-1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_IncreaseDecreaseInNetInvestmentInLease" xlink:label="tcmd_IncreaseDecreaseInNetInvestmentInLease_638584680861004964" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" xlink:to="tcmd_IncreaseDecreaseInNetInvestmentInLease_638584680861004964" order="9" use="optional" weight="-1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_638584680861004964" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_638584680861004964" order="10" use="optional" weight="-1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_638584680861004964" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" xlink:to="us-gaap_GainLossOnDispositionOfAssets1_638584680861004964" order="11" use="optional" weight="-1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset" xlink:label="tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset_638584680861004964" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" xlink:to="tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset_638584680861004964" order="12" use="optional" weight="-1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerAsset_638584680861004964" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerAsset_638584680861004964" order="13" use="optional" weight="-1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_638584680861014984" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable_638584680861014984" order="14" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities_638584680861014984" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" xlink:to="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities_638584680861014984" order="15" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable" xlink:label="tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable_638584680861014984" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680860994961" xlink:to="tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable_638584680861014984" order="16" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_638584680861014984" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_638584680861014984" order="2" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_638584680861014984" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities_638584680861014984" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_638584680861014984" order="1" use="optional" weight="-1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_638584680861014984" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities_638584680861014984" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_638584680861014984" order="2" use="optional" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets_638584680861024967" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities_638584680861014984" xlink:to="us-gaap_PaymentsToAcquireIntangibleAssets_638584680861024967" order="3" use="optional" weight="-1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_638584680861024967" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_638584680861024967" order="3" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_638584680861024967" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities_638584680861024967" xlink:to="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_638584680861024967" order="1" use="optional" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfNotesPayable" xlink:label="us-gaap_RepaymentsOfNotesPayable_638584680861024967" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities_638584680861024967" xlink:to="us-gaap_RepaymentsOfNotesPayable_638584680861024967" order="2" use="optional" weight="-1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans" xlink:label="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans_638584680861024967" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities_638584680861024967" xlink:to="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans_638584680861024967" order="3" use="optional" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised_638584680861034963" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities_638584680861024967" xlink:to="us-gaap_ProceedsFromStockOptionsExercised_638584680861034963" order="4" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="us-gaap_ProceedsFromIssuanceOfCommonStock_638584680861034963" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities_638584680861024967" xlink:to="us-gaap_ProceedsFromIssuanceOfCommonStock_638584680861034963" order="5" use="optional" weight="1" priority="2" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tactilemedical.com/role/DisclosureInventoriesDetails" xlink:type="extended" xlink:title="99940401 - Disclosure - Inventories (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryFinishedGoods" xlink:label="us-gaap_InventoryFinishedGoods_638584680861034963" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryFinishedGoods_638584680861034963" order="1" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryWorkInProcess" xlink:label="us-gaap_InventoryWorkInProcess_638584680861034963" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryWorkInProcess_638584680861034963" order="2" use="optional" weight="1" priority="2" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails" xlink:type="extended" xlink:title="99940501 - Disclosure - Goodwill And Intangible Assets (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_638584680861044961" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_638584680861044961" order="1" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_638584680861044961" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_638584680861044961" order="2" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_638584680861044961" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_638584680861044961" order="3" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_638584680861044961" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_638584680861044961" order="4" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_638584680861044961" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_638584680861044961" order="5" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" xlink:label="tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_638584680861044961" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_638584680861044961" order="6" use="optional" weight="1" priority="2" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tactilemedical.com/role/DisclosurePatentCostsNetDetailsCalc2" xlink:type="extended" xlink:title="40502 - Disclosure - Patent Costs, Net (Details) (Calc 2)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross_638584680861054988" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross_638584680861054988" order="1" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_638584680861054988" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_638584680861054988" order="2" use="optional" weight="-1" priority="2" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tactilemedical.com/role/DisclosureAccruedExpensesDetails" xlink:type="extended" xlink:title="99940601 - Disclosure - Accrued Expenses (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:label="us-gaap_ProductWarrantyAccrualClassifiedCurrent_638584680861084969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_ProductWarrantyAccrualClassifiedCurrent_638584680861084969" order="1" use="optional" weight="1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedProfessionalFeesCurrent" xlink:label="us-gaap_AccruedProfessionalFeesCurrent_638584680861084969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedProfessionalFeesCurrent_638584680861084969" order="2" use="optional" weight="1" priority="3" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_InTransitInventoryAccruedExpense" xlink:label="tcmd_InTransitInventoryAccruedExpense_638584680861084969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="tcmd_InTransitInventoryAccruedExpense_638584680861084969" order="3" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AccruedClinicalStudiesExpensesCurrent" xlink:label="tcmd_AccruedClinicalStudiesExpensesCurrent_638584680861084969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="tcmd_AccruedClinicalStudiesExpensesCurrent_638584680861084969" order="4" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AccruedTravelAndEntertainmentCurrent" xlink:label="tcmd_AccruedTravelAndEntertainmentCurrent_638584680861084969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="tcmd_AccruedTravelAndEntertainmentCurrent_638584680861084969" order="5" use="optional" weight="1" priority="1" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AccruedSalesAndUseTax" xlink:label="tcmd_AccruedSalesAndUseTax_638584680861094973" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="tcmd_AccruedSalesAndUseTax_638584680861094973" order="6" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent_638584680861094973" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent_638584680861094973" order="7" use="optional" weight="1" priority="2" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tactilemedical.com/role/DisclosureWarrantyReservesDetails" xlink:type="extended" xlink:title="99940701 - Disclosure - Warranty Reserves (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrual" xlink:label="us-gaap_ProductWarrantyAccrual" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:label="us-gaap_ProductWarrantyAccrualClassifiedCurrent_638584680861094973" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_ProductWarrantyAccrual" xlink:to="us-gaap_ProductWarrantyAccrualClassifiedCurrent_638584680861094973" order="1" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrualNoncurrent" xlink:label="us-gaap_ProductWarrantyAccrualNoncurrent_638584680861094973" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_ProductWarrantyAccrual" xlink:to="us-gaap_ProductWarrantyAccrualNoncurrent_638584680861094973" order="2" use="optional" weight="1" priority="2" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails" xlink:type="extended" xlink:title="99940802 - Disclosure - Credit Agreement - Maturities of Debt (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="us-gaap_DeferredFinanceCostsNet_638584680861104969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_DeferredFinanceCostsNet_638584680861104969" order="1" use="optional" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount_638584680861104969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_DebtInstrumentCarryingAmount_638584680861104969" order="2" use="optional" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_638584680861104969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_DebtInstrumentCarryingAmount_638584680861104969" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_638584680861104969" order="1" use="optional" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_638584680861104969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_DebtInstrumentCarryingAmount_638584680861104969" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_638584680861104969" order="2" use="optional" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_638584680861104969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_DebtInstrumentCarryingAmount_638584680861104969" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_638584680861104969" order="3" use="optional" weight="1" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails" xlink:type="extended" xlink:title="99940902 - Disclosure - Commitments and Contingencies - Lease related assets and liabilities (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_638584680861104969" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_638584680861104969" order="1" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_638584680861114968" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_638584680861114968" order="2" use="optional" weight="1" priority="2" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails" xlink:type="extended" xlink:title="99940903 - Disclosure - Commitments and Contingencies - Undiscounted cash flows (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:label="tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_638584680861114968" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_638584680861114968" order="1" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_638584680861114968" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_638584680861114968" order="2" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_638584680861114968" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_638584680861114968" order="3" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_638584680861114968" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_638584680861114968" order="4" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_638584680861114968" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_638584680861114968" order="5" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_638584680861124950" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_638584680861124950" order="6" use="optional" weight="1" priority="2" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetailsCalc2" xlink:type="extended" xlink:title="41004 - Disclosure - Commitments and Contingencies - Undiscounted cash flows (Details) - Calc2">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_638584680861124950" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_638584680861124950" order="1" use="optional" weight="1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability_638584680861124950" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_OperatingLeaseLiability_638584680861124950" order="2" use="optional" weight="1" priority="2" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tactilemedical.com/role/DisclosureRevenueDetails" xlink:type="extended" xlink:title="99941101 - Disclosure - Revenue (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesTypeLeaseSellingProfitLoss" xlink:label="us-gaap_SalesTypeLeaseSellingProfitLoss" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsSoldSalesTypeLease" xlink:label="us-gaap_CostOfGoodsSoldSalesTypeLease_638584680861124950" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_SalesTypeLeaseSellingProfitLoss" xlink:to="us-gaap_CostOfGoodsSoldSalesTypeLease_638584680861124950" order="1" use="optional" weight="-1" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesTypeLeaseRevenue" xlink:label="us-gaap_SalesTypeLeaseRevenue_638584680861134947" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_SalesTypeLeaseSellingProfitLoss" xlink:to="us-gaap_SalesTypeLeaseRevenue_638584680861134947" order="2" use="optional" weight="1" priority="2" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetailsCalc2" xlink:type="extended" xlink:title="41102 - Disclosure - Credit Agreement - Maturities of Debt (Details) - calc 2">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent_638584680861134947" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LongTermDebt_1" xlink:to="us-gaap_LongTermDebtCurrent_638584680861134947" order="1" use="optional" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent_638584680861134947" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LongTermDebt_1" xlink:to="us-gaap_LongTermDebtNoncurrent_638584680861134947" order="2" use="optional" weight="1" />
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>10
<FILENAME>tcmd-20240630_def.xml
<DESCRIPTION>EX-101.DEF
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--XBRL document created with Toppan Merrill Bridge  10.7.0.1 -->
<!--Based on XBRL 2.1-->
<!--Created on: 8/5/2024 3:21:29 PM-->
<!--Modified on: 8/5/2024 3:21:29 PM-->
<link:linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#StatementCondensedConsolidatedStatementsOfOperations" roleURI="http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#StatementCondensedConsolidatedStatementsOfStockholdersEquity" roleURI="http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureStockholdersEquityTables" roleURI="http://www.tactilemedical.com/role/DisclosureStockholdersEquityTables" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureNatureOfBusinessAndOperationsDetails" roleURI="http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureGoodwillAndIntangibleAssetsDetails" roleURI="http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCreditAgreementDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCreditAgreementMaturitiesOfDebtDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingenciesLeaseObligationsDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingenciesMajorVendorsDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingenciesRetirementPlanDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesRetirementPlanDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingenciesLegalProceedingsDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureStockholdersEquityStockBasedCompensationDetails" roleURI="http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails" roleURI="http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails" roleURI="http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureRevenueDetails" roleURI="http://www.tactilemedical.com/role/DisclosureRevenueDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails" roleURI="http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureFairValueMeasurementsEarnOutLiabilityDetails" roleURI="http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsEarnOutLiabilityDetails" />
  <link:roleRef roleURI="http://xbrl.sec.gov/ecd/role/IndividualsOnly" xlink:href="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd#IndividualsOnly" xlink:type="simple" />
  <link:arcroleRef arcroleURI="http://www.esma.europa.eu/xbrl/esef/arcrole/wider-narrower" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/arcrole/esma-arcrole-2018-11-21.xsd#wider-narrower" />
  <link:roleRef roleURI="http://www.tactilemedical.com/role/DisclosureStandardAndCustomAxisDomainDefaults" xlink:href="tcmd-20240630.xsd#DisclosureStandardAndCustomAxisDomainDefaults" xlink:type="simple" />
  <link:roleRef xlink:type="simple" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd#eedm" roleURI="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists" />
  <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#dimension-default" arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" />
  <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:definitionLink xlink:role="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists" xlink:type="extended" xlink:title="Extensible Enumeration Domain Members">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract_1" xlink:title="us-gaap_LiabilitiesCurrentAbstract_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_1" xlink:title="us-gaap_OperatingLeaseLiabilityCurrent_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_LiabilitiesCurrentAbstract_1" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:title="definition:us-gaap_LiabilitiesCurrentAbstract_1 To us-gaap_OperatingLeaseLiabilityCurrent_1" order="1" priority="0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract_1" xlink:title="us-gaap_AssetsAbstract_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_1" xlink:title="us-gaap_OperatingLeaseRightOfUseAsset_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_AssetsAbstract_1" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:title="definition:us-gaap_AssetsAbstract_1 To us-gaap_OperatingLeaseRightOfUseAsset_1" order="1" priority="0" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/DisclosureStandardAndCustomAxisDomainDefaults" xlink:type="extended" xlink:title="99900 - Disclosure - Standard And Custom Axis Domain Defaults">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis_1" xlink:title="dei_LegalEntityAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain_1" xlink:title="dei_EntityDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="dei_LegalEntityAxis_1" xlink:to="dei_EntityDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:dei_LegalEntityAxis_1 To dei_EntityDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis_1" xlink:title="us-gaap_StatementClassOfStockAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain_1" xlink:title="us-gaap_ClassOfStockDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_StatementClassOfStockAxis_1" xlink:to="us-gaap_ClassOfStockDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_StatementClassOfStockAxis_1 To us-gaap_ClassOfStockDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis_1" xlink:title="srt_ProductOrServiceAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain_1" xlink:title="srt_ProductsAndServicesDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_ProductOrServiceAxis_1" xlink:to="srt_ProductsAndServicesDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_ProductOrServiceAxis_1 To srt_ProductsAndServicesDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementScenarioAxis" xlink:label="srt_StatementScenarioAxis_1" xlink:title="srt_StatementScenarioAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="srt_ScenarioUnspecifiedDomain_1" xlink:title="srt_ScenarioUnspecifiedDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_StatementScenarioAxis_1" xlink:to="srt_ScenarioUnspecifiedDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_StatementScenarioAxis_1 To srt_ScenarioUnspecifiedDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis_1" xlink:title="us-gaap_StatementEquityComponentsAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain_1" xlink:title="us-gaap_EquityComponentDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_StatementEquityComponentsAxis_1" xlink:to="us-gaap_EquityComponentDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_StatementEquityComponentsAxis_1 To us-gaap_EquityComponentDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis_1" xlink:title="us-gaap_SubsequentEventTypeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain_1" xlink:title="us-gaap_SubsequentEventTypeDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_SubsequentEventTypeAxis_1" xlink:to="us-gaap_SubsequentEventTypeDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_SubsequentEventTypeAxis_1 To us-gaap_SubsequentEventTypeDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis_1" xlink:title="us-gaap_AwardTypeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1" xlink:title="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_AwardTypeAxis_1" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_AwardTypeAxis_1 To us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsidiarySaleOfStockAxis" xlink:label="us-gaap_SubsidiarySaleOfStockAxis_1" xlink:title="us-gaap_SubsidiarySaleOfStockAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="us-gaap_SaleOfStockNameOfTransactionDomain_1" xlink:title="us-gaap_SaleOfStockNameOfTransactionDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_SubsidiarySaleOfStockAxis_1" xlink:to="us-gaap_SaleOfStockNameOfTransactionDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_SubsidiarySaleOfStockAxis_1 To us-gaap_SaleOfStockNameOfTransactionDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancialInstrumentAxis" xlink:label="us-gaap_FinancialInstrumentAxis_1" xlink:title="us-gaap_FinancialInstrumentAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_1" xlink:title="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_FinancialInstrumentAxis_1" xlink:to="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_FinancialInstrumentAxis_1 To us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis_1" xlink:title="us-gaap_IncomeStatementLocationAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain_1" xlink:title="us-gaap_IncomeStatementLocationDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_IncomeStatementLocationAxis_1" xlink:to="us-gaap_IncomeStatementLocationDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_IncomeStatementLocationAxis_1 To us-gaap_IncomeStatementLocationDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1" xlink:title="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1" xlink:title="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1 To us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_1" xlink:title="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_1" xlink:title="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_1" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_1 To us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis_1" xlink:title="us-gaap_CreditFacilityAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain_1" xlink:title="us-gaap_CreditFacilityDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_CreditFacilityAxis_1" xlink:to="us-gaap_CreditFacilityDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_CreditFacilityAxis_1 To us-gaap_CreditFacilityDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="us-gaap_LineOfCreditFacilityAxis_1" xlink:title="us-gaap_LineOfCreditFacilityAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain_1" xlink:title="us-gaap_LineOfCreditFacilityLenderDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_LineOfCreditFacilityAxis_1" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_LineOfCreditFacilityAxis_1 To us-gaap_LineOfCreditFacilityLenderDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis_1" xlink:title="srt_RangeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember_1" xlink:title="srt_RangeMember_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_RangeAxis_1" xlink:to="srt_RangeMember_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_RangeAxis_1 To srt_RangeMember_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis_1" xlink:title="us-gaap_VariableRateAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain_1" xlink:title="us-gaap_VariableRateDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_VariableRateAxis_1" xlink:to="us-gaap_VariableRateDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_VariableRateAxis_1 To us-gaap_VariableRateDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis_1" xlink:title="us-gaap_PropertyPlantAndEquipmentByTypeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain_1" xlink:title="us-gaap_PropertyPlantAndEquipmentTypeDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis_1" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_PropertyPlantAndEquipmentByTypeAxis_1 To us-gaap_PropertyPlantAndEquipmentTypeDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis_1" xlink:title="us-gaap_ConcentrationRiskByBenchmarkAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_1" xlink:title="us-gaap_ConcentrationRiskBenchmarkDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis_1" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_ConcentrationRiskByBenchmarkAxis_1 To us-gaap_ConcentrationRiskBenchmarkDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis_1" xlink:title="us-gaap_ConcentrationRiskByTypeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain_1" xlink:title="us-gaap_ConcentrationRiskTypeDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_ConcentrationRiskByTypeAxis_1" xlink:to="us-gaap_ConcentrationRiskTypeDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_ConcentrationRiskByTypeAxis_1 To us-gaap_ConcentrationRiskTypeDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis" xlink:label="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_1" xlink:title="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain" xlink:label="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_1" xlink:title="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_1" xlink:to="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_1 To us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetirementPlanNameAxis" xlink:label="us-gaap_RetirementPlanNameAxis_1" xlink:title="us-gaap_RetirementPlanNameAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetirementPlanNameDomain" xlink:label="us-gaap_RetirementPlanNameDomain_1" xlink:title="us-gaap_RetirementPlanNameDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_RetirementPlanNameAxis_1" xlink:to="us-gaap_RetirementPlanNameDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_RetirementPlanNameAxis_1 To us-gaap_RetirementPlanNameDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis_1" xlink:title="us-gaap_PlanNameAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain_1" xlink:title="us-gaap_PlanNameDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_PlanNameAxis_1" xlink:to="us-gaap_PlanNameDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_PlanNameAxis_1 To us-gaap_PlanNameDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis_1" xlink:title="srt_TitleOfIndividualAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain_1" xlink:title="srt_TitleOfIndividualWithRelationshipToEntityDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_TitleOfIndividualAxis_1" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_TitleOfIndividualAxis_1 To srt_TitleOfIndividualWithRelationshipToEntityDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_1" xlink:title="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember_1" xlink:title="us-gaap_TypeOfAdoptionMember_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_1" xlink:to="us-gaap_TypeOfAdoptionMember_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_1 To us-gaap_TypeOfAdoptionMember_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VestingAxis" xlink:label="us-gaap_VestingAxis_1" xlink:title="us-gaap_VestingAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VestingDomain" xlink:label="us-gaap_VestingDomain_1" xlink:title="us-gaap_VestingDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_VestingAxis_1" xlink:to="us-gaap_VestingDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_VestingAxis_1 To us-gaap_VestingDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_1" xlink:title="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_1" xlink:title="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_1" xlink:to="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_1 To us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis_1" xlink:title="srt_MajorCustomersAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain_1" xlink:title="srt_NameOfMajorCustomerDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_MajorCustomersAxis_1" xlink:to="srt_NameOfMajorCustomerDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_MajorCustomersAxis_1 To srt_NameOfMajorCustomerDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="us-gaap_IncomeTaxAuthorityAxis_1" xlink:title="us-gaap_IncomeTaxAuthorityAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="us-gaap_IncomeTaxAuthorityDomain_1" xlink:title="us-gaap_IncomeTaxAuthorityDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_IncomeTaxAuthorityAxis_1" xlink:to="us-gaap_IncomeTaxAuthorityDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_IncomeTaxAuthorityAxis_1 To us-gaap_IncomeTaxAuthorityDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis_1" xlink:title="srt_StatementGeographicalAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain_1" xlink:title="srt_SegmentGeographicalDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_StatementGeographicalAxis_1" xlink:to="srt_SegmentGeographicalDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_StatementGeographicalAxis_1 To srt_SegmentGeographicalDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_1" xlink:title="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain_1" xlink:title="us-gaap_AntidilutiveSecuritiesNameDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_1" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_1 To us-gaap_AntidilutiveSecuritiesNameDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="us-gaap_FairValueByMeasurementFrequencyAxis_1" xlink:title="us-gaap_FairValueByMeasurementFrequencyAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="us-gaap_FairValueMeasurementFrequencyDomain_1" xlink:title="us-gaap_FairValueMeasurementFrequencyDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_FairValueByMeasurementFrequencyAxis_1" xlink:to="us-gaap_FairValueMeasurementFrequencyDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_FairValueByMeasurementFrequencyAxis_1 To us-gaap_FairValueMeasurementFrequencyDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis_1" xlink:title="us-gaap_FairValueByFairValueHierarchyLevelAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1" xlink:title="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis_1" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_FairValueByFairValueHierarchyLevelAxis_1 To us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis_1" xlink:title="us-gaap_BusinessAcquisitionAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain_1" xlink:title="us-gaap_BusinessAcquisitionAcquireeDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_BusinessAcquisitionAxis_1" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_BusinessAcquisitionAxis_1 To us-gaap_BusinessAcquisitionAcquireeDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="us-gaap_DebtInstrumentAxis_1" xlink:title="us-gaap_DebtInstrumentAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain_1" xlink:title="us-gaap_DebtInstrumentNameDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_DebtInstrumentAxis_1" xlink:to="us-gaap_DebtInstrumentNameDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_DebtInstrumentAxis_1 To us-gaap_DebtInstrumentNameDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RestatementAxis" xlink:label="srt_RestatementAxis_1" xlink:title="srt_RestatementAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RestatementDomain" xlink:label="srt_RestatementDomain_1" xlink:title="srt_RestatementDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_RestatementAxis_1" xlink:to="srt_RestatementDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_RestatementAxis_1 To srt_RestatementDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LitigationStatusAxis" xlink:label="us-gaap_LitigationStatusAxis_1" xlink:title="us-gaap_LitigationStatusAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LitigationStatusDomain" xlink:label="us-gaap_LitigationStatusDomain_1" xlink:title="us-gaap_LitigationStatusDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_LitigationStatusAxis_1" xlink:to="us-gaap_LitigationStatusDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_LitigationStatusAxis_1 To us-gaap_LitigationStatusDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis" xlink:label="us-gaap_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_1" xlink:title="us-gaap_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityBasedArrangementsIndividualContractsTypeOfDeferredCompensationDomain" xlink:label="us-gaap_EquityBasedArrangementsIndividualContractsTypeOfDeferredCompensationDomain_1" xlink:title="us-gaap_EquityBasedArrangementsIndividualContractsTypeOfDeferredCompensationDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_1" xlink:to="us-gaap_EquityBasedArrangementsIndividualContractsTypeOfDeferredCompensationDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_1 To us-gaap_EquityBasedArrangementsIndividualContractsTypeOfDeferredCompensationDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TypeOfArrangementAxis" xlink:label="us-gaap_TypeOfArrangementAxis_1" xlink:title="us-gaap_TypeOfArrangementAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:label="us-gaap_ArrangementsAndNonarrangementTransactionsMember_1" xlink:title="us-gaap_ArrangementsAndNonarrangementTransactionsMember_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_TypeOfArrangementAxis_1" xlink:to="us-gaap_ArrangementsAndNonarrangementTransactionsMember_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_TypeOfArrangementAxis_1 To us-gaap_ArrangementsAndNonarrangementTransactionsMember_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_CounterpartyNameAxis" xlink:label="srt_CounterpartyNameAxis_1" xlink:title="srt_CounterpartyNameAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RepurchaseAgreementCounterpartyNameDomain" xlink:label="srt_RepurchaseAgreementCounterpartyNameDomain_1" xlink:title="srt_RepurchaseAgreementCounterpartyNameDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_CounterpartyNameAxis_1" xlink:to="srt_RepurchaseAgreementCounterpartyNameDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_CounterpartyNameAxis_1 To srt_RepurchaseAgreementCounterpartyNameDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:label="us-gaap_LossContingenciesByNatureOfContingencyAxis_1" xlink:title="us-gaap_LossContingenciesByNatureOfContingencyAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LossContingencyNatureDomain" xlink:label="us-gaap_LossContingencyNatureDomain_1" xlink:title="us-gaap_LossContingencyNatureDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_LossContingenciesByNatureOfContingencyAxis_1" xlink:to="us-gaap_LossContingencyNatureDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_LossContingenciesByNatureOfContingencyAxis_1 To us-gaap_LossContingencyNatureDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" xlink:title="us-gaap_AssetAcquisitionAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:title="us-gaap_AssetAcquisitionDomain_1" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DebtInstrumentLeverageRatioTierAxis" xlink:label="tcmd_DebtInstrumentLeverageRatioTierAxis_1" xlink:title="tcmd_DebtInstrumentLeverageRatioTierAxis_1" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DebtInstrumentLeverageRatioTierDomain" xlink:label="tcmd_DebtInstrumentLeverageRatioTierDomain_1" xlink:title="tcmd_DebtInstrumentLeverageRatioTierDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="tcmd_DebtInstrumentLeverageRatioTierAxis_1" xlink:to="tcmd_DebtInstrumentLeverageRatioTierDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:tcmd_DebtInstrumentLeverageRatioTierAxis_1 To tcmd_DebtInstrumentLeverageRatioTierDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetAcquisitionAxis" xlink:label="us-gaap_AssetAcquisitionAxis_1" xlink:title="us-gaap_AssetAcquisitionAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetAcquisitionDomain" xlink:label="us-gaap_AssetAcquisitionDomain_1" xlink:title="us-gaap_AssetAcquisitionDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_AssetAcquisitionAxis_1" xlink:to="us-gaap_AssetAcquisitionDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_AssetAcquisitionAxis_1 To us-gaap_AssetAcquisitionDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_LitigationCaseAxis" xlink:label="srt_LitigationCaseAxis_1" xlink:title="srt_LitigationCaseAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain_1" xlink:title="srt_LitigationCaseTypeDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_LitigationCaseAxis_1" xlink:to="srt_LitigationCaseTypeDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_LitigationCaseAxis_1 To srt_LitigationCaseTypeDomain_1" order="1" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://xbrl.sec.gov/ecd/role/IndividualsOnly" xlink:type="extended" xlink:title="Individuals">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd#ecd_AllIndividualsMember" xlink:label="ecd_AllIndividualsMember" xlink:title="ecd_AllIndividualsMember" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_KristieT.BurnsMember" xlink:label="tcmd_KristieT.BurnsMember" xlink:title="tcmd_KristieT.BurnsMember" />
    <link:definitionArc xlink:type="arc" xlink:from="ecd_AllIndividualsMember" xlink:to="tcmd_KristieT.BurnsMember" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:title="definition:ecd_AllIndividualsMember To tcmd_KristieT.BurnsMember" order="1" priority="0" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_WilliamW.BurkeMember" xlink:label="tcmd_WilliamW.BurkeMember" xlink:title="tcmd_WilliamW.BurkeMember" />
    <link:definitionArc xlink:type="arc" xlink:from="ecd_AllIndividualsMember" xlink:to="tcmd_WilliamW.BurkeMember" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:title="definition:ecd_AllIndividualsMember To tcmd_WilliamW.BurkeMember" order="2" priority="0" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ElaineM.BirkemeyerMember" xlink:label="tcmd_ElaineM.BirkemeyerMember" xlink:title="tcmd_ElaineM.BirkemeyerMember" />
    <link:definitionArc xlink:type="arc" xlink:from="ecd_AllIndividualsMember" xlink:to="tcmd_ElaineM.BirkemeyerMember" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:title="definition:ecd_AllIndividualsMember To tcmd_ElaineM.BirkemeyerMember" order="3" priority="0" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DanielL.ReuversMember" xlink:label="tcmd_DanielL.ReuversMember" xlink:title="tcmd_DanielL.ReuversMember" />
    <link:definitionArc xlink:type="arc" xlink:from="ecd_AllIndividualsMember" xlink:to="tcmd_DanielL.ReuversMember" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:title="definition:ecd_AllIndividualsMember To tcmd_DanielL.ReuversMember" order="4" priority="0" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations" xlink:type="extended" xlink:title="995200200 - Statement - Condensed Consolidated Statements of Operations">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="srt_ProductOrServiceAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain_638584680861144975" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain_638584680861144975" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductMember" xlink:label="us-gaap_ProductMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_ProductsAndServicesDomain" xlink:to="us-gaap_ProductMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_RentalProductServiceMember" xlink:label="tcmd_RentalProductServiceMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="srt_ProductsAndServicesDomain" xlink:to="tcmd_RentalProductServiceMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfRevenue" xlink:label="us-gaap_CostOfRevenue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CostOfRevenue" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GrossProfit" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="us-gaap_OperatingExpensesAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingExpensesAbstract" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="us-gaap_SellingAndMarketingExpense" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_SellingAndMarketingExpense" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_ResearchAndDevelopmentExpense" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_GeneralAndAdministrativeExpense" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AmortizationOfIntangibleAssetsAndEarnOuts" xlink:label="tcmd_AmortizationOfIntangibleAssetsAndEarnOuts" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="tcmd_AmortizationOfIntangibleAssetsAndEarnOuts" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpenses" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingIncomeLoss" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NonoperatingIncomeExpense" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeTaxExpenseBenefit" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="10" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="11" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareAbstract" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_EarningsPerShareOtherDisclosureAbstract" xlink:label="tcmd_EarningsPerShareOtherDisclosureAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="12" xlink:from="us-gaap_StatementLineItems" xlink:to="tcmd_EarningsPerShareOtherDisclosureAbstract" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="tcmd_EarningsPerShareOtherDisclosureAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="tcmd_EarningsPerShareOtherDisclosureAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" priority="1" use="optional" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" xlink:type="extended" xlink:title="995200300 - Statement - Condensed Consolidated Statements of Stockholders' Equity">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain_638584680861184953" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain_638584680861184953" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_CommonStockMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AdditionalPaidInCapitalMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_RetainedEarningsMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_StockholdersEquity" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_SharesOutstanding" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:label="us-gaap_StockIssuedDuringPeriodValueNewIssues" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_StockIssuedDuringPeriodValueNewIssues" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="us-gaap_StockIssuedDuringPeriodSharesNewIssues" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_StockIssuedDuringPeriodSharesNewIssues" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:label="us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="10" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_NetIncomeLoss" priority="1" use="optional" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/DisclosureStockholdersEquityTables" xlink:type="extended" xlink:title="99931003 - Disclosure - Stockholders' Equity (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_638584680861224950" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_638584680861224950" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TimeBasedRestrictedStockUnitsRsusMember" xlink:label="tcmd_TimeBasedRestrictedStockUnitsRsusMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_RestrictedStockUnitsRSUMember" xlink:to="tcmd_TimeBasedRestrictedStockUnitsRsusMember" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember" xlink:label="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_RestrictedStockUnitsRSUMember" xlink:to="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" priority="1" use="optional" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails" xlink:type="extended" xlink:title="99940101 - Disclosure - Nature of Business and Operations (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfSubsidiaryOrEquityMethodInvesteeTable" xlink:label="us-gaap_ScheduleOfSubsidiaryOrEquityMethodInvesteeTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsidiarySaleOfStockAxis" xlink:label="us-gaap_SubsidiarySaleOfStockAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfSubsidiaryOrEquityMethodInvesteeTable" xlink:to="us-gaap_SubsidiarySaleOfStockAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="us-gaap_SaleOfStockNameOfTransactionDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_SubsidiarySaleOfStockAxis" xlink:to="us-gaap_SaleOfStockNameOfTransactionDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="us-gaap_SaleOfStockNameOfTransactionDomain_638584680861244953" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_SubsidiarySaleOfStockAxis" xlink:to="us-gaap_SaleOfStockNameOfTransactionDomain_638584680861244953" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IPOMember" xlink:label="us-gaap_IPOMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_SaleOfStockNameOfTransactionDomain" xlink:to="us-gaap_IPOMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_FollowOnPublicOfferingMember" xlink:label="tcmd_FollowOnPublicOfferingMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_SaleOfStockNameOfTransactionDomain" xlink:to="tcmd_FollowOnPublicOfferingMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsidiarySaleOfStockLineItems" xlink:label="us-gaap_SubsidiarySaleOfStockLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_SubsidiarySaleOfStockLineItems" xlink:to="us-gaap_ScheduleOfSubsidiaryOrEquityMethodInvesteeTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="us-gaap_StockIssuedDuringPeriodSharesNewIssues" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_SubsidiarySaleOfStockLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesNewIssues" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesIssuedPricePerShare" xlink:label="us-gaap_SharesIssuedPricePerShare" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_SubsidiarySaleOfStockLineItems" xlink:to="us-gaap_SharesIssuedPricePerShare" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharePrice" xlink:label="us-gaap_SharePrice" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_SubsidiarySaleOfStockLineItems" xlink:to="us-gaap_SharePrice" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceInitialPublicOffering" xlink:label="us-gaap_ProceedsFromIssuanceInitialPublicOffering" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_SubsidiarySaleOfStockLineItems" xlink:to="us-gaap_ProceedsFromIssuanceInitialPublicOffering" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ExpenseRelatingToInitialPublicOffering" xlink:label="tcmd_ExpenseRelatingToInitialPublicOffering" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_SubsidiarySaleOfStockLineItems" xlink:to="tcmd_ExpenseRelatingToInitialPublicOffering" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="us-gaap_ProceedsFromIssuanceOfCommonStock" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_SubsidiarySaleOfStockLineItems" xlink:to="us-gaap_ProceedsFromIssuanceOfCommonStock" priority="1" use="optional" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails" xlink:type="extended" xlink:title="99940501 - Disclosure - Goodwill And Intangible Assets (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_IncomeStatementLocationAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain_638584680861264951" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain_638584680861264951" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_CostOfSalesMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_638584680861264951" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_638584680861264951" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PatentsMember" xlink:label="us-gaap_PatentsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_PatentsMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DefensiveIntangibleAssetsMember" xlink:label="tcmd_DefensiveIntangibleAssetsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="tcmd_DefensiveIntangibleAssetsMember" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerContractsMember" xlink:label="us-gaap_CustomerContractsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerContractsMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerRelationshipsMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_DevelopedTechnologyRightsMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="3" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_638584680861284953" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_638584680861284953" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TradeNamesMember" xlink:label="us-gaap_TradeNamesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_TradeNamesMember" use="optional" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_PatentsMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="4" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_BusinessAcquisitionAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain_638584680861284953" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain_638584680861284953" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AfflovestPMember" xlink:label="tcmd_AfflovestPMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="tcmd_AfflovestPMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_Goodwill" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetImpairmentCharges" xlink:label="us-gaap_AssetImpairmentCharges" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_AssetImpairmentCharges" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNetAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNetAbstract" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" xlink:label="us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_IntangibleAssetsGrossExcludingGoodwill" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_AmortizationOfIntangibleAssets" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:label="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" xlink:label="tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:to="tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" priority="1" use="optional" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails" xlink:type="extended" xlink:title="99940801 - Disclosure - Credit Agreement (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="us-gaap_LineOfCreditFacilityTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_CreditFacilityAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain_638584680861364986" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain_638584680861364986" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="us-gaap_RevolvingCreditFacilityMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="us-gaap_RevolvingCreditFacilityMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TermLoanMember" xlink:label="tcmd_TermLoanMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="tcmd_TermLoanMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="srt_RangeAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember_638584680861364986" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember_638584680861364986" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="3" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_VariableRateAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain_638584680861374976" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain_638584680861374976" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FederalFundsEffectiveSwapRateMember" xlink:label="us-gaap_FederalFundsEffectiveSwapRateMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_FederalFundsEffectiveSwapRateMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BaseRateMember" xlink:label="us-gaap_BaseRateMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_BaseRateMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SecuredOvernightFinancingRateSofrMember" xlink:label="us-gaap_SecuredOvernightFinancingRateSofrMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_SecuredOvernightFinancingRateSofrMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="us-gaap_LineOfCreditFacilityLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="us-gaap_DebtInstrumentFaceAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentFaceAmount" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity" xlink:label="tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_CreditAgreementTotalAggregatePrincipalAmount" xlink:label="tcmd_CreditAgreementTotalAggregatePrincipalAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="tcmd_CreditAgreementTotalAggregatePrincipalAmount" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LongTermDebt" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCredit" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment" xlink:label="tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:label="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="10" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfDebt" xlink:label="us-gaap_ProceedsFromIssuanceOfDebt" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="11" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_ProceedsFromIssuanceOfDebt" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:label="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="12" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentPeriodicPayment" xlink:label="us-gaap_DebtInstrumentPeriodicPayment" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="13" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentPeriodicPayment" priority="1" use="optional" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails" xlink:type="extended" xlink:title="99940802 - Disclosure - Credit Agreement - Maturities of Debt (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="us-gaap_LineOfCreditFacilityTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_CreditFacilityAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain_638584680861414972" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain_638584680861414972" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TermLoanMember" xlink:label="tcmd_TermLoanMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="tcmd_TermLoanMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="us-gaap_LineOfCreditFacilityLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtByMaturityAbstract" xlink:label="us-gaap_LongTermDebtByMaturityAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LongTermDebtByMaturityAbstract" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_LongTermDebtByMaturityAbstract" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_LongTermDebtByMaturityAbstract" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_LongTermDebtByMaturityAbstract" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_LongTermDebtByMaturityAbstract" xlink:to="us-gaap_DebtInstrumentCarryingAmount" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="us-gaap_DeferredFinanceCostsNet" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_LongTermDebtByMaturityAbstract" xlink:to="us-gaap_DeferredFinanceCostsNet" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_LongTermDebtByMaturityAbstract" xlink:to="us-gaap_LongTermDebt" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_LongTermDebtByMaturityAbstract" xlink:to="us-gaap_LongTermDebtCurrent" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_LongTermDebtByMaturityAbstract" xlink:to="us-gaap_LongTermDebtNoncurrent" priority="1" use="optional" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails" xlink:type="extended" xlink:title="99940901 - Disclosure - Commitments and Contingencies - Lease Obligations (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeaseDescriptionTable" xlink:label="us-gaap_LesseeLeaseDescriptionTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_LesseeLeaseDescriptionTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain_638584680861434953" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain_638584680861434953" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BuildingMember" xlink:label="us-gaap_BuildingMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_BuildingMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquipmentMember" xlink:label="us-gaap_EquipmentMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_EquipmentMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_CorporateHeadQuarterInitialLeaseMember" xlink:label="tcmd_CorporateHeadQuarterInitialLeaseMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="tcmd_CorporateHeadQuarterInitialLeaseMember" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_CorporateHeadQuarterSecondLeaseMember" xlink:label="tcmd_CorporateHeadQuarterSecondLeaseMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="tcmd_CorporateHeadQuarterSecondLeaseMember" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_CorporateHeadQuarterThirdLeaseMember" xlink:label="tcmd_CorporateHeadQuarterThirdLeaseMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="tcmd_CorporateHeadQuarterThirdLeaseMember" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_LesseeLeaseDescriptionTable" xlink:to="srt_RangeAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember_638584680861444952" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember_638584680861444952" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeaseDescriptionLineItems" xlink:label="us-gaap_LesseeLeaseDescriptionLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeLeaseDescriptionTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseTermOfContract" xlink:label="us-gaap_LesseeOperatingLeaseTermOfContract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseTermOfContract" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AreaOfLand" xlink:label="us-gaap_AreaOfLand" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_AreaOfLand" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AdditionalOfficeSpaceAdded" xlink:label="tcmd_AdditionalOfficeSpaceAdded" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="tcmd_AdditionalOfficeSpaceAdded" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend" priority="1" use="optional" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails" xlink:type="extended" xlink:title="99940905 - Disclosure - Commitments and Contingencies - Major Vendors (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTable" xlink:label="us-gaap_ConcentrationRiskTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ConcentrationRiskTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_638584680861594958" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain_638584680861594958" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsTotalMember" xlink:label="us-gaap_CostOfGoodsTotalMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_CostOfGoodsTotalMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_ConcentrationRiskTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain_638584680861604970" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain_638584680861604970" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplierConcentrationRiskMember" xlink:label="us-gaap_SupplierConcentrationRiskMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_SupplierConcentrationRiskMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis" xlink:label="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="3" xlink:from="us-gaap_ConcentrationRiskTable" xlink:to="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain" xlink:label="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis" xlink:to="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain" xlink:label="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_638584680861604970" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis" xlink:to="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_638584680861604970" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_VendorOneMember" xlink:label="tcmd_VendorOneMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain" xlink:to="tcmd_VendorOneMember" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_VendorTwoMember" xlink:label="tcmd_VendorTwoMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain" xlink:to="tcmd_VendorTwoMember" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="us-gaap_ConcentrationRiskLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_ConcentrationRiskLineItems" xlink:to="us-gaap_ConcentrationRiskTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_NumberOfVendors" xlink:label="tcmd_NumberOfVendors" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ConcentrationRiskLineItems" xlink:to="tcmd_NumberOfVendors" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ConcentrationRiskLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1" priority="1" use="optional" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesRetirementPlanDetails" xlink:type="extended" xlink:title="99940907 - Disclosure - Commitments and Contingencies - Retirement Plan (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanTable" xlink:label="us-gaap_DefinedContributionPlanTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetirementPlanNameAxis" xlink:label="us-gaap_RetirementPlanNameAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_DefinedContributionPlanTable" xlink:to="us-gaap_RetirementPlanNameAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetirementPlanNameDomain" xlink:label="us-gaap_RetirementPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_RetirementPlanNameAxis" xlink:to="us-gaap_RetirementPlanNameDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetirementPlanNameDomain" xlink:label="us-gaap_RetirementPlanNameDomain_638584680861624997" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_RetirementPlanNameAxis" xlink:to="us-gaap_RetirementPlanNameDomain_638584680861624997" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DefinedContribution401kRetirementPlanMember" xlink:label="tcmd_DefinedContribution401kRetirementPlanMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_RetirementPlanNameDomain" xlink:to="tcmd_DefinedContribution401kRetirementPlanMember" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanDisclosureLineItems" xlink:label="us-gaap_DefinedContributionPlanDisclosureLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_DefinedContributionPlanDisclosureLineItems" xlink:to="us-gaap_DefinedContributionPlanTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:label="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_DefinedContributionPlanDisclosureLineItems" xlink:to="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" priority="1" use="optional" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails" xlink:type="extended" xlink:title="99940908 - Disclosure - Commitments and Contingencies - Legal Proceedings (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LossContingenciesTable" xlink:label="us-gaap_LossContingenciesTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_LitigationCaseAxis" xlink:label="srt_LitigationCaseAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_LossContingenciesTable" xlink:to="srt_LitigationCaseAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseTypeDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain_638584680861634975" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseTypeDomain_638584680861634975" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_WeaverLawsuitMember" xlink:label="tcmd_WeaverLawsuitMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_LitigationCaseTypeDomain" xlink:to="tcmd_WeaverLawsuitMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LossContingenciesLineItems" xlink:label="us-gaap_LossContingenciesLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="us-gaap_LossContingenciesTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_NumberOfOfficerAndDirectors" xlink:label="tcmd_NumberOfOfficerAndDirectors" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="tcmd_NumberOfOfficerAndDirectors" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LitigationSettlementLoss" xlink:label="us-gaap_LitigationSettlementLoss" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="us-gaap_LitigationSettlementLoss" priority="1" use="optional" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails" xlink:type="extended" xlink:title="99941001 - Disclosure - Stockholders' Equity - Stock-Based Compensation (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:to="us-gaap_PlanNameAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain_638584680861644963" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain_638584680861644963" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_EquityIncentivePlan2016Member" xlink:label="tcmd_EquityIncentivePlan2016Member" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_PlanNameDomain" xlink:to="tcmd_EquityIncentivePlan2016Member" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:to="us-gaap_IncomeStatementLocationAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain_638584680861654961" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain_638584680861654961" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_CostOfSalesMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingAndMarketingExpenseMember" xlink:label="us-gaap_SellingAndMarketingExpenseMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_SellingAndMarketingExpenseMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="us-gaap_ResearchAndDevelopmentExpenseMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_ResearchAndDevelopmentExpenseMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="us-gaap_GeneralAndAdministrativeExpenseMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_GeneralAndAdministrativeExpenseMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:to="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAbstract" xlink:label="us-gaap_ShareBasedCompensationAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:to="us-gaap_ShareBasedCompensationAbstract" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ShareBasedCompensationAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ShareBasedCompensationAbstract" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ShareBasedCompensationAbstract" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_ShareBasedCompensationAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_ShareBasedCompensationAbstract" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_ShareBasedCompensationAbstract" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" priority="1" use="optional" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails" xlink:type="extended" xlink:title="99941002 - Disclosure - Stockholders' Equity - Stock Options and Restricted Stock (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_PlanNameAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain_638584680861694979" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain_638584680861694979" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_EquityIncentivePlan2016Member" xlink:label="tcmd_EquityIncentivePlan2016Member" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_PlanNameDomain" xlink:to="tcmd_EquityIncentivePlan2016Member" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VestingAxis" xlink:label="us-gaap_VestingAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_VestingAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VestingDomain" xlink:label="us-gaap_VestingDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_VestingAxis" xlink:to="us-gaap_VestingDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VestingDomain" xlink:label="us-gaap_VestingDomain_638584680861704973" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_VestingAxis" xlink:to="us-gaap_VestingDomain_638584680861704973" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheOneMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_VestingDomain" xlink:to="us-gaap_ShareBasedCompensationAwardTrancheOneMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAwardTrancheTwoMember" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheTwoMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_VestingDomain" xlink:to="us-gaap_ShareBasedCompensationAwardTrancheTwoMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAwardTrancheThreeMember" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheThreeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_VestingDomain" xlink:to="us-gaap_ShareBasedCompensationAwardTrancheThreeMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="3" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_AwardTypeAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_638584680861714985" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_638584680861714985" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_EmployeeStockOptionMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TimeBasedRestrictedStockUnitsRsusMember" xlink:label="tcmd_TimeBasedRestrictedStockUnitsRsusMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_RestrictedStockUnitsRSUMember" xlink:to="tcmd_TimeBasedRestrictedStockUnitsRsusMember" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember" xlink:label="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_RestrictedStockUnitsRSUMember" xlink:to="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TwoThousandTwentySixPsuMember" xlink:label="tcmd_TwoThousandTwentySixPsuMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember" xlink:to="tcmd_TwoThousandTwentySixPsuMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TwoThousandTwentyFivePsuMember" xlink:label="tcmd_TwoThousandTwentyFivePsuMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember" xlink:to="tcmd_TwoThousandTwentyFivePsuMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TwoThousandTwentyFourPsuMember" xlink:label="tcmd_TwoThousandTwentyFourPsuMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember" xlink:to="tcmd_TwoThousandTwentyFourPsuMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TwoThousandTwentyThreePsuMember" xlink:label="tcmd_TwoThousandTwentyThreePsuMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember" xlink:to="tcmd_TwoThousandTwentyThreePsuMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="4" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="srt_RangeAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember_638584680861724959" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember_638584680861724959" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="10" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="11" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="12" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="13" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="14" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="15" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" priority="1" use="optional" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails" xlink:type="extended" xlink:title="99941003 - Disclosure - Stockholders' Equity - Employee Stock Purchase Plan (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfStockByClassTable" xlink:label="us-gaap_ScheduleOfStockByClassTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsidiarySaleOfStockAxis" xlink:label="us-gaap_SubsidiarySaleOfStockAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfStockByClassTable" xlink:to="us-gaap_SubsidiarySaleOfStockAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="us-gaap_SaleOfStockNameOfTransactionDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_SubsidiarySaleOfStockAxis" xlink:to="us-gaap_SaleOfStockNameOfTransactionDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="us-gaap_SaleOfStockNameOfTransactionDomain_638584680861854959" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_SubsidiarySaleOfStockAxis" xlink:to="us-gaap_SaleOfStockNameOfTransactionDomain_638584680861854959" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockMember" xlink:label="us-gaap_EmployeeStockMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_SaleOfStockNameOfTransactionDomain" xlink:to="us-gaap_EmployeeStockMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_ScheduleOfStockByClassTable" xlink:to="us-gaap_PlanNameAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain_638584680861864958" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain_638584680861864958" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_EquityIncentivePlan2016Member" xlink:label="tcmd_EquityIncentivePlan2016Member" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_PlanNameDomain" xlink:to="tcmd_EquityIncentivePlan2016Member" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfStockLineItems" xlink:label="us-gaap_ClassOfStockLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_ClassOfStockLineItems" xlink:to="us-gaap_ScheduleOfStockByClassTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ClassOfStockLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod" xlink:label="tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ClassOfStockLineItems" xlink:to="tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_ClassOfStockLineItems" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_IncrementalSharesToBeIssuedPercentage" xlink:label="tcmd_IncrementalSharesToBeIssuedPercentage" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_ClassOfStockLineItems" xlink:to="tcmd_IncrementalSharesToBeIssuedPercentage" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_IncrementalShareIncrease" xlink:label="tcmd_IncrementalShareIncrease" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_ClassOfStockLineItems" xlink:to="tcmd_IncrementalShareIncrease" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_ClassOfStockLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" priority="1" use="optional" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/DisclosureRevenueDetails" xlink:type="extended" xlink:title="99941101 - Disclosure - Revenue (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="srt_ProductOrServiceAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain_638584680861884983" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain_638584680861884983" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_LymphedemaProductsMember" xlink:label="tcmd_LymphedemaProductsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_ProductsAndServicesDomain" xlink:to="tcmd_LymphedemaProductsMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AirwayClearanceProductsMember" xlink:label="tcmd_AirwayClearanceProductsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="srt_ProductsAndServicesDomain" xlink:to="tcmd_AirwayClearanceProductsMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="srt_MajorCustomersAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain_638584680861884983" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain_638584680861884983" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_PrivateInsurersMember" xlink:label="tcmd_PrivateInsurersMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="tcmd_PrivateInsurersMember" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_VeteransAdministrationMember" xlink:label="tcmd_VeteransAdministrationMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="tcmd_VeteransAdministrationMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_MedicareMember" xlink:label="tcmd_MedicareMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="tcmd_MedicareMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DurableMedicalEquipmentDistributorsMember" xlink:label="tcmd_DurableMedicalEquipmentDistributorsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="tcmd_DurableMedicalEquipmentDistributorsMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="3" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="srt_RangeAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember_638584680861894957" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember_638584680861894957" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_DisaggregationOfRevenueTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_PercentageOfRevenue" xlink:label="tcmd_PercentageOfRevenue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="tcmd_PercentageOfRevenue" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesTypeLeaseLeaseIncomeAbstract" xlink:label="us-gaap_SalesTypeLeaseLeaseIncomeAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_SalesTypeLeaseLeaseIncomeAbstract" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesTypeLeaseRevenue" xlink:label="us-gaap_SalesTypeLeaseRevenue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_SalesTypeLeaseLeaseIncomeAbstract" xlink:to="us-gaap_SalesTypeLeaseRevenue" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsSoldSalesTypeLease" xlink:label="us-gaap_CostOfGoodsSoldSalesTypeLease" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_SalesTypeLeaseLeaseIncomeAbstract" xlink:to="us-gaap_CostOfGoodsSoldSalesTypeLease" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesTypeLeaseSellingProfitLoss" xlink:label="us-gaap_SalesTypeLeaseSellingProfitLoss" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_SalesTypeLeaseLeaseIncomeAbstract" xlink:to="us-gaap_SalesTypeLeaseSellingProfitLoss" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_RentToPurchaseArrangementsRentalPeriod" xlink:label="tcmd_RentToPurchaseArrangementsRentalPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_SalesTypeLeaseLeaseIncomeAbstract" xlink:to="tcmd_RentToPurchaseArrangementsRentalPeriod" priority="1" use="optional" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails" xlink:type="extended" xlink:title="99941302 - Disclosure - Net Income (Loss) Per Share - Antidilutive Securities Excluded From Computation of Earnings Per Share (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain_638584680861924977" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain_638584680861924977" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_EmployeeStockOptionMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_PerformanceSharesMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_EmployeeStockPurchasePlanMember" xlink:label="tcmd_EmployeeStockPurchasePlanMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="tcmd_EmployeeStockPurchasePlanMember" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" priority="1" use="optional" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsEarnOutLiabilityDetails" xlink:type="extended" xlink:title="99941401 - Disclosure - Fair Value Measurements - Earn out liability (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_638584680861936078" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" order="1" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_638584680861936078" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueInputsLevel3Member" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiability" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_BusinessCombinationContingentConsiderationLiability" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" priority="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" priority="1" use="optional" />
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>11
<FILENAME>tcmd-20240630_lab.xml
<DESCRIPTION>EX-101.LAB
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--XBRL document created with Toppan Merrill Bridge  10.7.0.1 -->
<!--Based on XBRL 2.1-->
<!--Created on: 8/5/2024 3:21:29 PM-->
<!--Modified on: 8/5/2024 3:21:29 PM-->
<link:linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt">
  <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: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:labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CoverAbstract" xlink:to="dei_CoverAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CoverAbstract_lbl" xml:lang="en-US">Document and Entity Information</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentInformationTable" xlink:to="dei_DocumentInformationTable_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentInformationTable_lbl" xml:lang="en-US">Document Information [Table]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentInformationLineItems_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentInformationLineItems_lbl" xml:lang="en-US">Document Information [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="dei_DocumentType" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType_lbl" />
    <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/2024/dei-2024.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentQuarterlyReport" xlink:to="dei_DocumentQuarterlyReport_lbl" />
    <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/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl" />
    <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/2024/dei-2024.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport_lbl" />
    <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/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl" />
    <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/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl" />
    <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/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl" />
    <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/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl" />
    <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/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl" />
    <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/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl" />
    <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/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl" />
    <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/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl" />
    <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/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode_lbl" />
    <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/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl" />
    <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/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle_lbl" />
    <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/2024/dei-2024.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol_lbl" />
    <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/2024/dei-2024.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl" />
    <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/2024/dei-2024.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus_lbl" />
    <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/2024/dei-2024.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent_lbl" />
    <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/2024/dei-2024.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory_lbl" />
    <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/2024/dei-2024.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness_lbl" />
    <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/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl" />
    <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/2024/dei-2024.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany_lbl" />
    <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/2024/dei-2024.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding_lbl" />
    <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/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl" />
    <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/2024/dei-2024.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate_lbl" />
    <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/2024/dei-2024.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus_lbl" />
    <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/2024/dei-2024.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus_lbl" />
    <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/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl" />
    <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.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfFinancialPositionAbstract_lbl" xml:lang="en-US">Condensed Consolidated Balance Sheets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementTable_lbl" />
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementLineItems_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StatementLineItems_lbl" xml:lang="en-US">Net Income (Loss) Per Share</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsAbstract_lbl" />
    <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 [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrentAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsCurrentAbstract_lbl" xml:lang="en-US">Assets, Current [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" />
    <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, at Carrying Value</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent_lbl" />
    <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, Current</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccountsReceivableNetCurrent_lbl" xml:lang="en-US">Accounts receivable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetInvestmentInLease" xlink:label="us-gaap_NetInvestmentInLease" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetInvestmentInLease" xlink:to="us-gaap_NetInvestmentInLease_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetInvestmentInLease_lbl" xml:lang="en-US">Net Investment in Lease</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NetInvestmentInLease_lbl" xml:lang="en-US">Net investment in leases</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet_lbl" />
    <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, Net</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InventoryNet_lbl" xml:lang="en-US">Inventories</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_InventoryNet_lbl" xml:lang="en-US">Total inventories</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl" />
    <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 Expense and Other Assets, Current</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsCurrent_lbl" xml:lang="en-US">Assets, Current</link:label>
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsMiscellaneousAbstract" xlink:label="us-gaap_OtherAssetsMiscellaneousAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAssetsMiscellaneousAbstract" xlink:to="us-gaap_OtherAssetsMiscellaneousAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherAssetsMiscellaneousAbstract_lbl" xml:lang="en-US">Other Assets, Miscellaneous [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OtherAssetsMiscellaneousAbstract_lbl" xml:lang="en-US">Non-current assets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_lbl" />
    <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, Plant and Equipment, Net</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xml:lang="en-US">Right of use operating lease assets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" />
    <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 (Excluding Goodwill)</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" xml:lang="en-US">Total intangible assets (Net)</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Goodwill" xlink:to="us-gaap_Goodwill_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_Goodwill_lbl" xml:lang="en-US">Goodwill</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_MedicareAccountsReceivableNonCurrent" xlink:label="tcmd_MedicareAccountsReceivableNonCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_MedicareAccountsReceivableNonCurrent" xlink:to="tcmd_MedicareAccountsReceivableNonCurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_MedicareAccountsReceivableNonCurrent_lbl" xml:lang="en-US">Amount of non-current accounts receivable on account of medicare.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_MedicareAccountsReceivableNonCurrent_lbl" xml:lang="en-US">Medicare Accounts Receivable Non Current</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="tcmd_MedicareAccountsReceivableNonCurrent_lbl" xml:lang="en-US">Accounts receivable, non-current</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxAssetsNet" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet_lbl" xml:lang="en-US">Deferred Tax Assets, Net, Noncurrent</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet_lbl" xml:lang="en-US">Deferred income taxes</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAssetsNoncurrent" xlink:to="us-gaap_OtherAssetsNoncurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherAssetsNoncurrent_lbl" xml:lang="en-US">Other Assets, Noncurrent</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OtherAssetsNoncurrent_lbl" xml:lang="en-US">Other non-current assets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsNoncurrent" xlink:label="us-gaap_AssetsNoncurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsNoncurrent" xlink:to="us-gaap_AssetsNoncurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsNoncurrent_lbl" xml:lang="en-US">Assets, Noncurrent</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_AssetsNoncurrent_lbl" xml:lang="en-US">Total non-current assets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Assets_lbl" xml:lang="en-US">Assets</link:label>
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" />
    <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 Equity [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xml:lang="en-US">Liabilities and Stockholders' Equity</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesCurrentAbstract_lbl" xml:lang="en-US">Liabilities, Current [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableCurrent" xlink:to="us-gaap_AccountsPayableCurrent_lbl" />
    <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, Current</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_NotesPayableCurrent" xlink:label="us-gaap_NotesPayableCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NotesPayableCurrent" xlink:to="us-gaap_NotesPayableCurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NotesPayableCurrent_lbl" xml:lang="en-US">Notes Payable, Current</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NotesPayableCurrent_lbl" xml:lang="en-US">Note payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl" xml:lang="en-US">Employee-related Liabilities, Current</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl" xml:lang="en-US">Accrued payroll and related taxes</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent_lbl" />
    <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 Liabilities, Current</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccruedLiabilitiesCurrent_lbl" xml:lang="en-US">Accrued expenses</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_AccruedLiabilitiesCurrent_lbl" xml:lang="en-US">Total</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="us-gaap_AccruedIncomeTaxesCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedIncomeTaxesCurrent" xlink:to="us-gaap_AccruedIncomeTaxesCurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedIncomeTaxesCurrent_lbl" xml:lang="en-US">Accrued Income Taxes, Current</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccruedIncomeTaxesCurrent_lbl" xml:lang="en-US">Income taxes payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xml:lang="en-US">Less: Current obligations under operating lease liabilities</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xml:lang="en-US">Operating lease liabilities</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xml:lang="en-US">Operating lease liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesCurrent" xlink:label="us-gaap_OtherLiabilitiesCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherLiabilitiesCurrent" xlink:to="us-gaap_OtherLiabilitiesCurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherLiabilitiesCurrent_lbl" xml:lang="en-US">Other Liabilities, Current</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OtherLiabilitiesCurrent_lbl" xml:lang="en-US">Other current liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesCurrent_lbl" xml:lang="en-US">Liabilities, Current</link:label>
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesNoncurrentAbstract" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract" xlink:to="us-gaap_LiabilitiesNoncurrentAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract_lbl" xml:lang="en-US">Liabilities, Noncurrent [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract_lbl" xml:lang="en-US">Non-current liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermNotesPayable" xlink:label="us-gaap_LongTermNotesPayable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermNotesPayable" xlink:to="us-gaap_LongTermNotesPayable_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermNotesPayable_lbl" xml:lang="en-US">Notes Payable, Noncurrent</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LongTermNotesPayable_lbl" xml:lang="en-US">Note payable, non-current</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrualNoncurrent" xlink:label="us-gaap_ProductWarrantyAccrualNoncurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyAccrualNoncurrent" xlink:to="us-gaap_ProductWarrantyAccrualNoncurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProductWarrantyAccrualNoncurrent_lbl" xml:lang="en-US">Product Warranty Accrual, Noncurrent</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProductWarrantyAccrualNoncurrent_lbl" xml:lang="en-US">Accrued warranty reserve, non-current</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedIncomeTaxesNoncurrent" xlink:label="us-gaap_AccruedIncomeTaxesNoncurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedIncomeTaxesNoncurrent" xlink:to="us-gaap_AccruedIncomeTaxesNoncurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedIncomeTaxesNoncurrent_lbl" xml:lang="en-US">Accrued Income Taxes, Noncurrent</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AccruedIncomeTaxesNoncurrent_lbl" xml:lang="en-US">Income taxes payable, non-current</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" />
    <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, Noncurrent</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xml:lang="en-US">Operating lease liabilities, non-current</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xml:lang="en-US">Non-current obligations under operating lease liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="us-gaap_LiabilitiesNoncurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesNoncurrent" xlink:to="us-gaap_LiabilitiesNoncurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesNoncurrent_lbl" xml:lang="en-US">Total long-term liabilities, net of current portion</link:label>
    <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 non-current liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Liabilities_lbl" xml:lang="en-US">Liabilities</link:label>
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingencies" xlink:to="us-gaap_CommitmentsAndContingencies_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommitmentsAndContingencies_lbl" xml:lang="en-US">Commitment and Contingencies</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_CommitmentsAndContingencies_lbl" xml:lang="en-US">Commitments and Contingencies (see Note 9)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract_lbl" />
    <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' Equity Attributable to Parent [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockholdersEquityAbstract_lbl" xml:lang="en-US">Stockholders' equity:</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockValue" xlink:to="us-gaap_PreferredStockValue_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockValue_lbl" xml:lang="en-US">Preferred Stock, Value, Issued</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_PreferredStockValue_lbl" xml:lang="en-US">Preferred stock, $0.001 par value, 50,000,000 shares authorized; none issued and outstanding as of June 30, 2024 and December 31, 2023</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockValue" xlink:to="us-gaap_CommonStockValue_lbl" />
    <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, Value, Issued</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CommonStockValue_lbl" xml:lang="en-US">Common stock, $0.001 par value, 300,000,000 shares authorized; 23,966,748 shares issued and outstanding as of June 30, 2024; 23,600,584 shares issued and outstanding as of December 31, 2023</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapital" xlink:to="us-gaap_AdditionalPaidInCapital_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xml:lang="en-US">Retained Earnings (Accumulated Deficit)</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xml:lang="en-US">Retained earnings</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquity_lbl" xml:lang="en-US">Stockholders' Equity Attributable to Parent</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_StockholdersEquity_lbl" xml:lang="en-US">Balances at the end</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_StockholdersEquity_lbl" xml:lang="en-US">Balances at the beginning</link:label>
    <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' equity</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xml:lang="en-US">Liabilities and Equity</link:label>
    <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' equity</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare_lbl" xml:lang="en-US">Preferred Stock, Par or Stated Value Per Share</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare_lbl" xml:lang="en-US">Preferred stock, par value (in dollars per share)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesAuthorized" xlink:to="us-gaap_PreferredStockSharesAuthorized_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockSharesAuthorized_lbl" xml:lang="en-US">Preferred Stock, Shares Authorized</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PreferredStockSharesAuthorized_lbl" xml:lang="en-US">Preferred stock, shares authorized</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesIssued" xlink:to="us-gaap_PreferredStockSharesIssued_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockSharesIssued_lbl" xml:lang="en-US">Preferred stock, shares issued</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PreferredStockSharesIssued_lbl" xml:lang="en-US">Preferred stock, shares issued</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesOutstanding" xlink:to="us-gaap_PreferredStockSharesOutstanding_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockSharesOutstanding_lbl" xml:lang="en-US">Preferred Stock, Shares Outstanding</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PreferredStockSharesOutstanding_lbl" xml:lang="en-US">Preferred stock, shares outstanding</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare_lbl" />
    <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 or Stated Value Per Share</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare_lbl" xml:lang="en-US">Common stock, par value (in dollars per share)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeStatementAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeStatementAbstract_lbl" xml:lang="en-US">Condensed Consolidated Statements of Operations</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductOrServiceAxis_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ProductOrServiceAxis_lbl" xml:lang="en-US">Products and Services [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ProductsAndServicesDomain" xlink:to="srt_ProductsAndServicesDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ProductsAndServicesDomain_lbl" xml:lang="en-US">Products and Services [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductMember" xlink:label="us-gaap_ProductMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductMember" xlink:to="us-gaap_ProductMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProductMember_lbl" xml:lang="en-US">Sales revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_RentalProductServiceMember" xlink:label="tcmd_RentalProductServiceMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_RentalProductServiceMember" xlink:to="tcmd_RentalProductServiceMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_RentalProductServiceMember_lbl" xml:lang="en-US">Information relating to rental product services which generate revenue for the company.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_RentalProductServiceMember_lbl" xml:lang="en-US">Rental revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" />
    <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 from Contract with Customer, Excluding Assessed Tax</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xml:lang="en-US">Total revenue</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfRevenue" xlink:label="us-gaap_CostOfRevenue" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfRevenue" xlink:to="us-gaap_CostOfRevenue_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CostOfRevenue_lbl" xml:lang="en-US">Total cost of revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_GrossProfit_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GrossProfit_lbl" xml:lang="en-US">Gross Profit</link:label>
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="us-gaap_OperatingExpensesAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpensesAbstract_lbl" />
    <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 [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="us-gaap_SellingAndMarketingExpense" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingAndMarketingExpense" xlink:to="us-gaap_SellingAndMarketingExpense_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SellingAndMarketingExpense_lbl" xml:lang="en-US">Selling and Marketing Expense</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ResearchAndDevelopmentExpense" xlink:to="us-gaap_ResearchAndDevelopmentExpense_lbl" />
    <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 Expense</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeneralAndAdministrativeExpense" xlink:to="us-gaap_GeneralAndAdministrativeExpense_lbl" />
    <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 Expense</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_GeneralAndAdministrativeExpense_lbl" xml:lang="en-US">Reimbursement, general and administrative</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AmortizationOfIntangibleAssetsAndEarnOuts" xlink:label="tcmd_AmortizationOfIntangibleAssetsAndEarnOuts" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_AmortizationOfIntangibleAssetsAndEarnOuts" xlink:to="tcmd_AmortizationOfIntangibleAssetsAndEarnOuts_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_AmortizationOfIntangibleAssetsAndEarnOuts_lbl" xml:lang="en-US">Amount of impairment of intangible asset and earn outs.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_AmortizationOfIntangibleAssetsAndEarnOuts_lbl" xml:lang="en-US">Amortization of Intangible Assets and Earn outs</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_AmortizationOfIntangibleAssetsAndEarnOuts_lbl" xml:lang="en-US">Intangible asset amortization and earn-out</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_OperatingExpenses_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingExpenses_lbl" xml:lang="en-US">Operating Expenses</link:label>
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xml:lang="en-US">Operating Income (Loss)</link:label>
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_NonoperatingIncomeExpense_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NonoperatingIncomeExpense_lbl" xml:lang="en-US">Nonoperating Income (Expense)</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NonoperatingIncomeExpense_lbl" xml:lang="en-US">Other income (expense)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl" />
    <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 Expense (Benefit)</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Income tax expense (benefit)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NetIncomeLoss_lbl" xml:lang="en-US">Net loss for the period</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareAbstract_lbl" xml:lang="en-US">Net Income (Loss) Per Share</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EarningsPerShareAbstract_lbl" xml:lang="en-US">Net income (loss) per common share</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_lbl" xml:lang="en-US">Income (Loss) from Continuing Operations, Per Basic Share</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_lbl" xml:lang="en-US">Basic</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_lbl" xml:lang="en-US">Income (Loss) from Continuing Operations, Per Diluted Share</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_lbl" xml:lang="en-US">Diluted</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_EarningsPerShareOtherDisclosureAbstract" xlink:label="tcmd_EarningsPerShareOtherDisclosureAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_EarningsPerShareOtherDisclosureAbstract" xlink:to="tcmd_EarningsPerShareOtherDisclosureAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_EarningsPerShareOtherDisclosureAbstract_lbl" xml:lang="en-US">n/a</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_EarningsPerShareOtherDisclosureAbstract_lbl" xml:lang="en-US">Earnings Per Share Other Disclosure [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="tcmd_EarningsPerShareOtherDisclosureAbstract_lbl" xml:lang="en-US">Weighted-average common shares used to compute net income (loss) per common share</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Basic</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xml:lang="en-US">Basic</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xml:lang="en-US">Weighted-average shares outstanding</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xml:lang="en-US">Diluted</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xml:lang="en-US">Weighted-average shares used to compute diluted net income (loss) per share</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementOfStockholdersEquityAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract_lbl" xml:lang="en-US">Condensed Consolidated Statements of Stockholders' Equity</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis_lbl" />
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_EquityComponentDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityComponentDomain_lbl" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockMember" xlink:to="us-gaap_CommonStockMember_lbl" />
    <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</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalMember" xlink:to="us-gaap_AdditionalPaidInCapitalMember_lbl" />
    <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</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember_lbl" />
    <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 (Accumulated Deficit).</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_lbl" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesOutstanding" xlink:to="us-gaap_SharesOutstanding_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharesOutstanding_lbl" xml:lang="en-US">Shares, Outstanding</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_SharesOutstanding_lbl" xml:lang="en-US">Balances at the end (in shares)</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_SharesOutstanding_lbl" xml:lang="en-US">Balances at the beginning (in shares)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_lbl" xml:lang="en-US">Adjustments to Additional Paid in Capital, Share-based Compensation, Stock Options, Requisite Service Period Recognition</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_lbl" xml:lang="en-US">Stock-based compensation</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl" xml:lang="en-US">Stock Issued During Period, Value, Stock Options Exercised</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl" xml:lang="en-US">Exercise of common stock options and vesting of performance and restricted stock units</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" xml:lang="en-US">Exercised</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" xml:lang="en-US">Exercise of common stock options and vesting of performance and restricted stock units (in shares)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:label="us-gaap_StockIssuedDuringPeriodValueNewIssues" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:to="us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl" xml:lang="en-US">Stock Issued During Period, Value, New Issues</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl" xml:lang="en-US">Sale of common stock from follow-on public offering, net of offering expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="us-gaap_StockIssuedDuringPeriodSharesNewIssues" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:to="us-gaap_StockIssuedDuringPeriodSharesNewIssues_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesNewIssues_lbl" xml:lang="en-US">Stock Issued During Period, Shares, New Issues</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesNewIssues_lbl" xml:lang="en-US">Number of shares of common stock sold</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesNewIssues_lbl" xml:lang="en-US">Sale of common stock from follow-on public offering, net of offering expenses (in shares)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:label="us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:to="us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_lbl" xml:lang="en-US">Stock Issued During Period, Value, Employee Stock Purchase Plan</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_lbl" xml:lang="en-US">Common shares issued for employee stock purchase plan</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:to="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_lbl" xml:lang="en-US">Stock Issued During Period, Shares, Employee Stock Purchase Plans</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_lbl" xml:lang="en-US">Common shares issued for employee stock purchase plan (in shares)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfCashFlowsAbstract_lbl" xml:lang="en-US">Condensed Consolidated Statements of Cash Flows</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInContinuingOperationsAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInContinuingOperationsAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInContinuingOperationsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInContinuingOperationsAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInContinuingOperationsAbstract_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Continuing Operations [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NetCashProvidedByUsedInContinuingOperationsAbstract_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/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProfitLoss" xlink:to="us-gaap_ProfitLoss_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProfitLoss_lbl" xml:lang="en-US">Net Income (Loss), Including Portion Attributable to Noncontrolling Interest</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ProfitLoss_lbl" xml:lang="en-US">Net income (loss)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xml:lang="en-US">Adjustments, Noncash Items, to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xml:lang="en-US">Adjustments to reconcile net income (loss) to net cash provided by operating activities:</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationDepletionAndAmortization" xlink:to="us-gaap_DepreciationDepletionAndAmortization_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DepreciationDepletionAndAmortization_lbl" xml:lang="en-US">Depreciation, Depletion and Amortization</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCredits" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:to="us-gaap_DeferredIncomeTaxesAndTaxCredits_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCredits_lbl" xml:lang="en-US">Deferred Income Taxes and Tax Credits</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCredits_lbl" xml:lang="en-US">Deferred income taxes</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensation_lbl" xml:lang="en-US">Share-based Compensation</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensation_lbl" xml:lang="en-US">Stock-based compensation expense</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="us-gaap_GainLossOnDispositionOfAssets1" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnDispositionOfAssets1" xlink:to="us-gaap_GainLossOnDispositionOfAssets1_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_lbl" xml:lang="en-US">Gain (Loss) on Disposition of Assets</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_lbl" xml:lang="en-US">Loss on disposal of property and equipment and intangibles</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesFairValueAdjustment" xlink:label="us-gaap_LiabilitiesFairValueAdjustment" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesFairValueAdjustment" xlink:to="us-gaap_LiabilitiesFairValueAdjustment_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesFairValueAdjustment_lbl" xml:lang="en-US">Liabilities, Fair Value Adjustment</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_LiabilitiesFairValueAdjustment_lbl" xml:lang="en-US">Change in fair value of earn-out liability</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xml:lang="en-US">Increase (Decrease) in Operating Capital [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xml:lang="en-US">Changes in assets and liabilities, net of acquisition:</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</link:label>
    <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="tcmd-20240630.xsd#tcmd_IncreaseDecreaseInNetInvestmentInLease" xlink:label="tcmd_IncreaseDecreaseInNetInvestmentInLease" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_IncreaseDecreaseInNetInvestmentInLease" xlink:to="tcmd_IncreaseDecreaseInNetInvestmentInLease_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_IncreaseDecreaseInNetInvestmentInLease_lbl" xml:lang="en-US">Represents the increase (decrease) in net investment in leases.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_IncreaseDecreaseInNetInvestmentInLease_lbl" xml:lang="en-US">Increase (Decrease) In Net Investment in Lease</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="tcmd_IncreaseDecreaseInNetInvestmentInLease_lbl" xml:lang="en-US">Net investment in leases</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl" xml:lang="en-US">Increase (Decrease) in Inventories</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl" xml:lang="en-US">Inventories</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_lbl" xml:lang="en-US">Increase (Decrease) in Income Taxes Receivable</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_lbl" xml:lang="en-US">Income taxes</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl" xml:lang="en-US">Increase (Decrease) in Prepaid Expense and Other Assets</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl" xml:lang="en-US">Prepaid expenses and other assets</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset" xlink:label="tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset" xlink:to="tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset_lbl" xml:lang="en-US">Represents the increase (decrease) in right of use operating lease assets.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset_lbl" xml:lang="en-US">Increase (Decrease) In Operating Lease Right Of Use Asset</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset_lbl" xml:lang="en-US">Right of use operating lease assets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerAsset" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerAsset_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerAsset_lbl" xml:lang="en-US">Increase (Decrease) in Contract Receivables, Net</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerAsset_lbl" xml:lang="en-US">Accounts receivable, non-current</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl" xml:lang="en-US">Increase (Decrease) in Accounts Payable</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl" xml:lang="en-US">Accounts payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities_lbl" xml:lang="en-US">Increase (Decrease) in Employee Related Liabilities</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities_lbl" xml:lang="en-US">Accrued payroll and related taxes</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable" xlink:label="tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable" xlink:to="tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable_lbl" xml:lang="en-US">The increase (decrease) during the reporting period in other expenses (excluding accrued payroll and related taxes) and income taxes payable incurred but not yet paid.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable_lbl" xml:lang="en-US">Increase Decrease In Other Accrued Liabilities And Income Taxes Payable</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable_lbl" xml:lang="en-US">Accrued expenses and other liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities</link:label>
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities, Continuing Operations [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_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/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</link:label>
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_lbl" xml:lang="en-US">Proceeds from Sale of Property, Plant, and Equipment</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_lbl" xml:lang="en-US">Proceeds from sale of property and equipment</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireIntangibleAssets" xlink:to="us-gaap_PaymentsToAcquireIntangibleAssets_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets_lbl" xml:lang="en-US">Payments to Acquire Intangible Assets</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets_lbl" xml:lang="en-US">Intangible assets expenditures</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities</link:label>
    <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 investing activities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities, Continuing Operations [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_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/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:to="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_lbl" xml:lang="en-US">Payment for Contingent Consideration Liability, Financing Activities</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_lbl" xml:lang="en-US">Payments on earn-out</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_lbl" xml:lang="en-US">Earn-out liability payment</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfNotesPayable" xlink:label="us-gaap_RepaymentsOfNotesPayable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfNotesPayable" xlink:to="us-gaap_RepaymentsOfNotesPayable_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RepaymentsOfNotesPayable_lbl" xml:lang="en-US">Repayments of Notes Payable</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_RepaymentsOfNotesPayable_lbl" xml:lang="en-US">Payments on note payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromStockOptionsExercised" xlink:to="us-gaap_ProceedsFromStockOptionsExercised_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromStockOptionsExercised_lbl" xml:lang="en-US">Proceeds from Stock Options Exercised</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProceedsFromStockOptionsExercised_lbl" xml:lang="en-US">Proceeds from exercise of common stock options</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans" xlink:label="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans" xlink:to="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans_lbl" xml:lang="en-US">Proceeds, Issuance of Shares, Share-Based Payment Arrangement, Excluding Option Exercised</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans_lbl" xml:lang="en-US">Proceeds from the issuance of common stock from the employee stock purchase plan</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="us-gaap_ProceedsFromIssuanceOfCommonStock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:to="us-gaap_ProceedsFromIssuanceOfCommonStock_lbl" />
    <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 Issuance of Common Stock</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProceedsFromIssuanceOfCommonStock_lbl" xml:lang="en-US">Proceeds from issuance of common stock at market</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities</link:label>
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_lbl" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_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/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xml:lang="en-US">Cash and cash equivalents - end of period</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xml:lang="en-US">Cash and cash equivalents - beginning of period</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract_lbl" />
    <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 Cash Flow Information [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract_lbl" xml:lang="en-US">Supplemental cash flow disclosure</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestPaidNet" xlink:to="us-gaap_InterestPaidNet_lbl" />
    <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, Net</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InterestPaidNet_lbl" xml:lang="en-US">Cash paid for interest</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesPaid" xlink:label="us-gaap_IncomeTaxesPaid" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesPaid" xlink:to="us-gaap_IncomeTaxesPaid_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxesPaid_lbl" xml:lang="en-US">Income Taxes Paid</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncomeTaxesPaid_lbl" xml:lang="en-US">Cash paid for taxes</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1" xlink:label="us-gaap_NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1" xlink:to="us-gaap_NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1_lbl" xml:lang="en-US">Noncash or Part Noncash Acquisition, Value of Assets Acquired</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1_lbl" xml:lang="en-US">Capital expenditures incurred but not yet paid</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_NatureOfBusinessAndOperationAbstract" xlink:label="tcmd_NatureOfBusinessAndOperationAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_NatureOfBusinessAndOperationAbstract" xlink:to="tcmd_NatureOfBusinessAndOperationAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_NatureOfBusinessAndOperationAbstract_lbl" xml:lang="en-US">n/a</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_NatureOfBusinessAndOperationAbstract_lbl" xml:lang="en-US">Nature of Business and Operations</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NatureOfOperations" xlink:label="us-gaap_NatureOfOperations" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NatureOfOperations" xlink:to="us-gaap_NatureOfOperations_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NatureOfOperations_lbl" xml:lang="en-US">Nature of Operations [Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NatureOfOperations_lbl" xml:lang="en-US">Nature of Business and Operations</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl" xml:lang="en-US">Basis of Presentation</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_lbl" xml:lang="en-US">Basis of Presentation and Significant Accounting Policies [Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_lbl" xml:lang="en-US">Basis of Presentation</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountingPoliciesAbstract_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/2024/elts/us-gaap-2024.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock_lbl" xml:lang="en-US">Significant Accounting Policies [Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="us-gaap_InventoryDisclosureAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_InventoryDisclosureAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryDisclosureAbstract_lbl" xml:lang="en-US">Inventories</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryDisclosureTextBlock" xlink:to="us-gaap_InventoryDisclosureTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryDisclosureTextBlock_lbl" xml:lang="en-US">Inventory Disclosure [Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InventoryDisclosureTextBlock_lbl" xml:lang="en-US">Inventories</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl" />
    <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</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_lbl" />
    <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 Disclosure [Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:label="us-gaap_AccruedLiabilitiesCurrentAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedLiabilitiesCurrentAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedLiabilitiesCurrentAbstract_lbl" xml:lang="en-US">Accrued Expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AccruedExpensesDisclosureCurrentTextBlock" xlink:label="tcmd_AccruedExpensesDisclosureCurrentTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_AccruedExpensesDisclosureCurrentTextBlock" xlink:to="tcmd_AccruedExpensesDisclosureCurrentTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_AccruedExpensesDisclosureCurrentTextBlock_lbl" xml:lang="en-US">The entire disclosure for accrued expenses that are classified as current at the end of the reporting period.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_AccruedExpensesDisclosureCurrentTextBlock_lbl" xml:lang="en-US">Accrued Expenses Disclosure, Current [Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_AccruedExpensesDisclosureCurrentTextBlock_lbl" xml:lang="en-US">Accrued Expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyDisclosureAbstract" xlink:label="us-gaap_StandardProductWarrantyDisclosureAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyDisclosureAbstract" xlink:to="us-gaap_StandardProductWarrantyDisclosureAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StandardProductWarrantyDisclosureAbstract_lbl" xml:lang="en-US">Warranty Reserves</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyDisclosureTextBlock" xlink:label="us-gaap_ProductWarrantyDisclosureTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyDisclosureTextBlock" xlink:to="us-gaap_ProductWarrantyDisclosureTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProductWarrantyDisclosureTextBlock_lbl" xml:lang="en-US">Product Warranty Disclosure [Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProductWarrantyDisclosureTextBlock_lbl" xml:lang="en-US">Warranty Reserves</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtDisclosureAbstract_lbl" xml:lang="en-US">Credit Agreement</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="us-gaap_DebtDisclosureTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtDisclosureTextBlock_lbl" xml:lang="en-US">Debt Disclosure [Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DebtDisclosureTextBlock_lbl" xml:lang="en-US">Credit Agreement</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl" />
    <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</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl" />
    <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 Disclosure [Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityNoteAbstract" xlink:label="us-gaap_StockholdersEquityNoteAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_StockholdersEquityNoteAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquityNoteAbstract_lbl" xml:lang="en-US">Stockholders' Equity</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:label="us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:to="us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock_lbl" xml:lang="en-US">Shareholders' Equity and Share-based Payments [Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock_lbl" xml:lang="en-US">Stockholders' Equity</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerAbstract_lbl" />
    <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</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureAbstract_lbl" />
    <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 Taxes</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_lbl" />
    <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 Tax Disclosure [Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock_lbl" />
    <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 [Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EarningsPerShareTextBlock_lbl" xml:lang="en-US">Net Income (Loss) Per Share</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="us-gaap_FairValueDisclosuresAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueDisclosuresAbstract" xlink:to="us-gaap_FairValueDisclosuresAbstract_lbl" />
    <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 Measurements</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="us-gaap_FairValueDisclosuresTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueDisclosuresTextBlock" xlink:to="us-gaap_FairValueDisclosuresTextBlock_lbl" />
    <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 Disclosures [Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2024/elts/us-gaap-2024.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:to="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl" xml:lang="en-US">Basis of Accounting, Policy [Policy Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl" xml:lang="en-US">Basis of Presentation</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="us-gaap_ConsolidationPolicyTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConsolidationPolicyTextBlock" xlink:to="us-gaap_ConsolidationPolicyTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConsolidationPolicyTextBlock_lbl" xml:lang="en-US">Consolidation, Policy [Policy Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ConsolidationPolicyTextBlock_lbl" xml:lang="en-US">Principles of Consolidation</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UseOfEstimates" xlink:label="us-gaap_UseOfEstimates" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UseOfEstimates" xlink:to="us-gaap_UseOfEstimates_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_UseOfEstimates_lbl" xml:lang="en-US">Use of Estimates, Policy [Policy Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_UseOfEstimates_lbl" xml:lang="en-US">Use of Estimates</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock" xlink:label="tcmd_NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock" xlink:to="tcmd_NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock_lbl" xml:lang="en-US">Disclosure of accounting policy pertaining to new accounting pronouncements not yet adopted.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock_lbl" xml:lang="en-US">New Accounting Pronouncements, Note Yet Adopted Policy [Policy Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock_lbl" xml:lang="en-US">Accounting Pronouncement Not Yet Adopted</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl" xml:lang="en-US">Schedule of Inventory, Current [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl" xml:lang="en-US">Schedule of inventories</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_lbl" />
    <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 Finite-Lived Intangible Assets [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_lbl" xml:lang="en-US">Schedule of finite lived intangible assets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:to="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_lbl" xml:lang="en-US">Finite-lived Intangible Assets Amortization Expense [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_lbl" xml:lang="en-US">Schedule of future amortization expense</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ScheduleOfAccruedExpensesTableTextBlock" xlink:label="tcmd_ScheduleOfAccruedExpensesTableTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_ScheduleOfAccruedExpensesTableTextBlock" xlink:to="tcmd_ScheduleOfAccruedExpensesTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_ScheduleOfAccruedExpensesTableTextBlock_lbl" xml:lang="en-US">Tabular disclosure of the carrying value as of the balance sheet date of accrued expenses excluding accounts payable. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_ScheduleOfAccruedExpensesTableTextBlock_lbl" xml:lang="en-US">Schedule of Accrued Expenses [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_ScheduleOfAccruedExpensesTableTextBlock_lbl" xml:lang="en-US">Schedule of Accrued Expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:to="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_lbl" xml:lang="en-US">Schedule of Product Warranty Liability [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_lbl" xml:lang="en-US">Schedule of warranty reserves</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:to="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_lbl" xml:lang="en-US">Schedule of Maturities of Long-term Debt [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_lbl" xml:lang="en-US">Schedule of maturities of the term note payable</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:label="tcmd_AssetsAndLiabilitiesLesseeTableTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:to="tcmd_AssetsAndLiabilitiesLesseeTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_AssetsAndLiabilitiesLesseeTableTextBlock_lbl" xml:lang="en-US">The tabular disclosure of lease-related assets and liabilities.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_AssetsAndLiabilitiesLesseeTableTextBlock_lbl" xml:lang="en-US">Assets and Liabilities, Lessee [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_AssetsAndLiabilitiesLesseeTableTextBlock_lbl" xml:lang="en-US">Summary of lease-related assets and liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLeaseIncomeTableTextBlock" xlink:label="us-gaap_OperatingLeaseLeaseIncomeTableTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLeaseIncomeTableTextBlock" xlink:to="us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_lbl" xml:lang="en-US">Operating Lease, Lease Income [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_lbl" xml:lang="en-US">Summary of undiscounted cash flows</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedStockUnitsRSUMember" xlink:to="us-gaap_RestrictedStockUnitsRSUMember_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RestrictedStockUnitsRSUMember_lbl" xml:lang="en-US">Restricted stock units</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TimeBasedRestrictedStockUnitsRsusMember" xlink:label="tcmd_TimeBasedRestrictedStockUnitsRsusMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_TimeBasedRestrictedStockUnitsRsusMember" xlink:to="tcmd_TimeBasedRestrictedStockUnitsRsusMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_TimeBasedRestrictedStockUnitsRsusMember_lbl" xml:lang="en-US">Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_TimeBasedRestrictedStockUnitsRsusMember_lbl" xml:lang="en-US">Time-Based Restricted Stock Units</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember" xlink:label="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember" xlink:to="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_lbl" xml:lang="en-US">This member stands for performance-based stock-settled restricted stock units plan.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_lbl" xml:lang="en-US">Performance-based stock-settled restricted stock units</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:to="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_lbl" xml:lang="en-US">Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_lbl" xml:lang="en-US">Schedule of allocation of total stock-based compensation expense</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl" />
    <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 Share-based Compensation, Stock Options, Activity [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl" xml:lang="en-US">Schedule of stock option activity</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_lbl" />
    <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 Share-based Compensation, Restricted Stock Units Award Activity [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_lbl" xml:lang="en-US">Schedule of stock-settled restricted stock unit activity</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl" xml:lang="en-US">Disaggregation of Revenue [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl" xml:lang="en-US">Summary of revenue disaggregated by product</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ScheduleOfRevenueFromThirdPartyPayersTableTextBlock" xlink:label="tcmd_ScheduleOfRevenueFromThirdPartyPayersTableTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_ScheduleOfRevenueFromThirdPartyPayersTableTextBlock" xlink:to="tcmd_ScheduleOfRevenueFromThirdPartyPayersTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_ScheduleOfRevenueFromThirdPartyPayersTableTextBlock_lbl" xml:lang="en-US">Tabular disclosure of disaggregation of revenue revenues from third-party payers.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_ScheduleOfRevenueFromThirdPartyPayersTableTextBlock_lbl" xml:lang="en-US">Schedule Of Revenue From Third Party Payers [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_ScheduleOfRevenueFromThirdPartyPayersTableTextBlock_lbl" xml:lang="en-US">Summary of revenue by channel</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesTypeLeaseLeaseIncomeTableTextBlock" xlink:label="us-gaap_SalesTypeLeaseLeaseIncomeTableTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesTypeLeaseLeaseIncomeTableTextBlock" xlink:to="us-gaap_SalesTypeLeaseLeaseIncomeTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SalesTypeLeaseLeaseIncomeTableTextBlock_lbl" xml:lang="en-US">Sales-type Lease, Lease Income [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SalesTypeLeaseLeaseIncomeTableTextBlock_lbl" xml:lang="en-US">Sales-type lease revenue and the associated cost of goods sold</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" />
    <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 Earnings Per Share, Basic and Diluted [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xml:lang="en-US">Schedule of computation of the basic and diluted net income (loss) per share</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl" xml:lang="en-US">Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl" xml:lang="en-US">Schedule of potentially dilutive securities outstanding</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:label="us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:to="us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_lbl" xml:lang="en-US">Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_lbl" xml:lang="en-US">Schedule of changes in the earn-out liability</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfSubsidiaryOrEquityMethodInvesteeTable" xlink:label="us-gaap_ScheduleOfSubsidiaryOrEquityMethodInvesteeTable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfSubsidiaryOrEquityMethodInvesteeTable" xlink:to="us-gaap_ScheduleOfSubsidiaryOrEquityMethodInvesteeTable_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfSubsidiaryOrEquityMethodInvesteeTable_lbl" xml:lang="en-US">Schedule of Subsidiary or Equity Method Investee [Table]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsidiarySaleOfStockAxis" xlink:label="us-gaap_SubsidiarySaleOfStockAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsidiarySaleOfStockAxis" xlink:to="us-gaap_SubsidiarySaleOfStockAxis_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SubsidiarySaleOfStockAxis_lbl" xml:lang="en-US">Sale of Stock [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="us-gaap_SaleOfStockNameOfTransactionDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SaleOfStockNameOfTransactionDomain" xlink:to="us-gaap_SaleOfStockNameOfTransactionDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SaleOfStockNameOfTransactionDomain_lbl" xml:lang="en-US">Sale of Stock [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IPOMember" xlink:label="us-gaap_IPOMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IPOMember" xlink:to="us-gaap_IPOMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IPOMember_lbl" xml:lang="en-US">IPO</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_FollowOnPublicOfferingMember" xlink:label="tcmd_FollowOnPublicOfferingMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_FollowOnPublicOfferingMember" xlink:to="tcmd_FollowOnPublicOfferingMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_FollowOnPublicOfferingMember_lbl" xml:lang="en-US">Represents the information pertaining to follow on public offering.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_FollowOnPublicOfferingMember_lbl" xml:lang="en-US">Follow On Public Offering [Member]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_FollowOnPublicOfferingMember_lbl" xml:lang="en-US">Follow-On Public Offering</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsidiarySaleOfStockLineItems" xlink:label="us-gaap_SubsidiarySaleOfStockLineItems" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsidiarySaleOfStockLineItems" xlink:to="us-gaap_SubsidiarySaleOfStockLineItems_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SubsidiarySaleOfStockLineItems_lbl" xml:lang="en-US">Subsidiary, Sale of Stock</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_SubsidiarySaleOfStockLineItems_lbl" xml:lang="en-US">Nature of Business and Operations</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesIssuedPricePerShare" xlink:label="us-gaap_SharesIssuedPricePerShare" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesIssuedPricePerShare" xlink:to="us-gaap_SharesIssuedPricePerShare_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharesIssuedPricePerShare_lbl" xml:lang="en-US">Shares Issued, Price Per Share</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_SharesIssuedPricePerShare_lbl" xml:lang="en-US">IPO price per share (in dollars per share)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharePrice" xlink:label="us-gaap_SharePrice" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharePrice" xlink:to="us-gaap_SharePrice_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharePrice_lbl" xml:lang="en-US">Share Price</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_SharePrice_lbl" xml:lang="en-US">Stock price</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceInitialPublicOffering" xlink:label="us-gaap_ProceedsFromIssuanceInitialPublicOffering" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromIssuanceInitialPublicOffering" xlink:to="us-gaap_ProceedsFromIssuanceInitialPublicOffering_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromIssuanceInitialPublicOffering_lbl" xml:lang="en-US">Proceeds from Issuance Initial Public Offering</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProceedsFromIssuanceInitialPublicOffering_lbl" xml:lang="en-US">Net proceeds from the initial public offering</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ExpenseRelatingToInitialPublicOffering" xlink:label="tcmd_ExpenseRelatingToInitialPublicOffering" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_ExpenseRelatingToInitialPublicOffering" xlink:to="tcmd_ExpenseRelatingToInitialPublicOffering_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_ExpenseRelatingToInitialPublicOffering_lbl" xml:lang="en-US">Amount of expenses relating to the initial public offering during the period.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_ExpenseRelatingToInitialPublicOffering_lbl" xml:lang="en-US">Expense Relating To Initial Public Offering</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_ExpenseRelatingToInitialPublicOffering_lbl" xml:lang="en-US">Expense Relating To Initial Public Offering</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNetAbstract" xlink:label="us-gaap_InventoryNetAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNetAbstract" xlink:to="us-gaap_InventoryNetAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryNetAbstract_lbl" xml:lang="en-US">Inventory, Net [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_InventoryNetAbstract_lbl" xml:lang="en-US">Inventories</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryFinishedGoods" xlink:label="us-gaap_InventoryFinishedGoods" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryFinishedGoods" xlink:to="us-gaap_InventoryFinishedGoods_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InventoryFinishedGoods_lbl" xml:lang="en-US">Finished goods</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryWorkInProcess" xlink:label="us-gaap_InventoryWorkInProcess" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryWorkInProcess" xlink:to="us-gaap_InventoryWorkInProcess_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryWorkInProcess_lbl" xml:lang="en-US">Inventory, Work in Process, Gross</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InventoryWorkInProcess_lbl" xml:lang="en-US">Component parts and work-in-process</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_lbl" />
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAxis_lbl" />
    <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="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain_lbl" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AfflovestPMember" xlink:label="tcmd_AfflovestPMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_AfflovestPMember" xlink:to="tcmd_AfflovestPMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_AfflovestPMember_lbl" xml:lang="en-US">Represent information pertaining to AffloVest APA.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_AfflovestPMember_lbl" xml:lang="en-US">AffloVest APA</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_AfflovestPMember_lbl" xml:lang="en-US">AffloVest APA</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationAxis_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeStatementLocationAxis_lbl" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_IncomeStatementLocationDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeStatementLocationDomain_lbl" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfSalesMember" xlink:to="us-gaap_CostOfSalesMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CostOfSalesMember_lbl" xml:lang="en-US">Cost of revenue.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CostOfSalesMember_lbl" xml:lang="en-US">Cost of revenue.</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl" />
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PatentsMember" xlink:label="us-gaap_PatentsMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PatentsMember" xlink:to="us-gaap_PatentsMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PatentsMember_lbl" xml:lang="en-US">Patents</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PatentsMember_lbl" xml:lang="en-US">Patents pending</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DefensiveIntangibleAssetsMember" xlink:label="tcmd_DefensiveIntangibleAssetsMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_DefensiveIntangibleAssetsMember" xlink:to="tcmd_DefensiveIntangibleAssetsMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_DefensiveIntangibleAssetsMember_lbl" xml:lang="en-US">This member stands for defensive intangible assets.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_DefensiveIntangibleAssetsMember_lbl" xml:lang="en-US">Defensive intangible assets</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_DefensiveIntangibleAssetsMember_lbl" xml:lang="en-US">Defensive intangible assets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerContractsMember" xlink:label="us-gaap_CustomerContractsMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerContractsMember" xlink:to="us-gaap_CustomerContractsMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CustomerContractsMember_lbl" xml:lang="en-US">Customer accounts</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CustomerContractsMember_lbl" xml:lang="en-US">Customer accounts</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerRelationshipsMember" xlink:to="us-gaap_CustomerRelationshipsMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CustomerRelationshipsMember_lbl" xml:lang="en-US">Customer relationships</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CustomerRelationshipsMember_lbl" xml:lang="en-US">Customer relationships</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DevelopedTechnologyRightsMember" xlink:to="us-gaap_DevelopedTechnologyRightsMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DevelopedTechnologyRightsMember_lbl" xml:lang="en-US">Developed technology</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DevelopedTechnologyRightsMember_lbl" xml:lang="en-US">Developed technology</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xml:lang="en-US">Indefinite-lived Intangible Assets [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" xml:lang="en-US">Indefinite-lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TradeNamesMember" xlink:label="us-gaap_TradeNamesMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradeNamesMember" xlink:to="us-gaap_TradeNamesMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TradeNamesMember_lbl" xml:lang="en-US">Tradenames</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_TradeNamesMember_lbl" xml:lang="en-US">Tradenames</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsLineItems_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems_lbl" xml:lang="en-US">Goodwill and Intangible Assets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetImpairmentCharges" xlink:label="us-gaap_AssetImpairmentCharges" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetImpairmentCharges" xlink:to="us-gaap_AssetImpairmentCharges_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetImpairmentCharges_lbl" xml:lang="en-US">Asset Impairment Charges</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AssetImpairmentCharges_lbl" xml:lang="en-US">Impairment recognized</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNetAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNetAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNetAbstract_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Net [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNetAbstract_lbl" xml:lang="en-US">Definite-lived intangible assets:</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" xlink:label="us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" xlink:to="us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_lbl" xml:lang="en-US">Weighted Average Amortization Period</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Gross</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross_lbl" xml:lang="en-US">Gross Carrying Amount</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Accumulated Amortization</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xml:lang="en-US">Accumulated Amortization</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Net</link:label>
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract_lbl" xml:lang="en-US">Indefinite-lived Intangible Assets (Excluding Goodwill) [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract_lbl" xml:lang="en-US">Unamortized intangible assets:</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_lbl" xml:lang="en-US">Indefinite-lived Intangible Assets (Excluding Goodwill)</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_lbl" xml:lang="en-US">Gross Carrying Amount, Indefinite</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:to="us-gaap_IntangibleAssetsGrossExcludingGoodwill_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill_lbl" xml:lang="en-US">Intangible Assets, Gross (Excluding Goodwill)</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill_lbl" xml:lang="en-US">Total intangible assets (Gross)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AmortizationOfIntangibleAssets" xlink:to="us-gaap_AmortizationOfIntangibleAssets_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AmortizationOfIntangibleAssets_lbl" xml:lang="en-US">Amortization of Intangible Assets</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AmortizationOfIntangibleAssets_lbl" xml:lang="en-US">Amortization expense</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:label="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_lbl" xml:lang="en-US">Future Amortization</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Remainder of Fiscal Year</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_lbl" xml:lang="en-US">2024 (July 1 - December 31)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl" xml:lang="en-US">2025</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Two</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl" xml:lang="en-US">2026</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Three</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl" xml:lang="en-US">2027</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Four</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_lbl" xml:lang="en-US">2028</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" xlink:label="tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" xlink:to="tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_lbl" xml:lang="en-US">Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after 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).</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_lbl" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, after Year Four</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_lbl" xml:lang="en-US">Thereafter</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:label="us-gaap_ProductWarrantyAccrualClassifiedCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:to="us-gaap_ProductWarrantyAccrualClassifiedCurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProductWarrantyAccrualClassifiedCurrent_lbl" xml:lang="en-US">Product Warranty Accrual, Current</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProductWarrantyAccrualClassifiedCurrent_lbl" xml:lang="en-US">Warranty</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ProductWarrantyAccrualClassifiedCurrent_lbl" xml:lang="en-US">Accrued warranty reserve, current</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedProfessionalFeesCurrent" xlink:label="us-gaap_AccruedProfessionalFeesCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedProfessionalFeesCurrent" xlink:to="us-gaap_AccruedProfessionalFeesCurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedProfessionalFeesCurrent_lbl" xml:lang="en-US">Accrued Professional Fees, Current</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccruedProfessionalFeesCurrent_lbl" xml:lang="en-US">Legal and consulting</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_InTransitInventoryAccruedExpense" xlink:label="tcmd_InTransitInventoryAccruedExpense" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_InTransitInventoryAccruedExpense" xlink:to="tcmd_InTransitInventoryAccruedExpense_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_InTransitInventoryAccruedExpense_lbl" xml:lang="en-US">In-transit inventory accrued expense.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_InTransitInventoryAccruedExpense_lbl" xml:lang="en-US">In-transit inventory accrued expense</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_InTransitInventoryAccruedExpense_lbl" xml:lang="en-US">In-transit inventory</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AccruedTravelAndEntertainmentCurrent" xlink:label="tcmd_AccruedTravelAndEntertainmentCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_AccruedTravelAndEntertainmentCurrent" xlink:to="tcmd_AccruedTravelAndEntertainmentCurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_AccruedTravelAndEntertainmentCurrent_lbl" xml:lang="en-US">Carrying value as of the balance sheet date of obligations incurred through that date and payable for travel and entertainment expenses. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_AccruedTravelAndEntertainmentCurrent_lbl" xml:lang="en-US">Accrued Travel And Entertainment Current</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_AccruedTravelAndEntertainmentCurrent_lbl" xml:lang="en-US">Travel</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AccruedClinicalStudiesExpensesCurrent" xlink:label="tcmd_AccruedClinicalStudiesExpensesCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_AccruedClinicalStudiesExpensesCurrent" xlink:to="tcmd_AccruedClinicalStudiesExpensesCurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_AccruedClinicalStudiesExpensesCurrent_lbl" xml:lang="en-US">The carrying amount as of the balance sheet date of accrued clinical studies.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_AccruedClinicalStudiesExpensesCurrent_lbl" xml:lang="en-US">Accrued Clinical Studies Expenses, Current</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_AccruedClinicalStudiesExpensesCurrent_lbl" xml:lang="en-US">Clinical studies</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AccruedSalesAndUseTax" xlink:label="tcmd_AccruedSalesAndUseTax" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_AccruedSalesAndUseTax" xlink:to="tcmd_AccruedSalesAndUseTax_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_AccruedSalesAndUseTax_lbl" xml:lang="en-US">Carrying value as of the balance sheet date of obligations relating to sales and use tax.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_AccruedSalesAndUseTax_lbl" xml:lang="en-US">Accrued Sales And Use Tax</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_AccruedSalesAndUseTax_lbl" xml:lang="en-US">Sales and use tax</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAccruedLiabilitiesCurrent" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent_lbl" />
    <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, Current</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent_lbl" xml:lang="en-US">Other</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MovementInStandardProductWarrantyAccrualRollForward" xlink:label="us-gaap_MovementInStandardProductWarrantyAccrualRollForward" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MovementInStandardProductWarrantyAccrualRollForward" xlink:to="us-gaap_MovementInStandardProductWarrantyAccrualRollForward_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MovementInStandardProductWarrantyAccrualRollForward_lbl" xml:lang="en-US">Movement in Standard Product Warranty Accrual [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="us-gaap_StandardProductWarrantyAccrual" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrual" xlink:to="us-gaap_StandardProductWarrantyAccrual_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StandardProductWarrantyAccrual_lbl" xml:lang="en-US">Standard Product Warranty Accrual</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_StandardProductWarrantyAccrual_lbl" xml:lang="en-US">Ending balance</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_StandardProductWarrantyAccrual_lbl" xml:lang="en-US">Beginning balance</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:label="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:to="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_lbl" xml:lang="en-US">Standard Product Warranty Accrual, Increase for Warranties Issued</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_lbl" xml:lang="en-US">Warranty provision</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrualPayments" xlink:label="us-gaap_StandardProductWarrantyAccrualPayments" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrualPayments" xlink:to="us-gaap_StandardProductWarrantyAccrualPayments_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StandardProductWarrantyAccrualPayments_lbl" xml:lang="en-US">Standard Product Warranty Accrual, Decrease for Payments</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_StandardProductWarrantyAccrualPayments_lbl" xml:lang="en-US">Processed warranty claims</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrual" xlink:label="us-gaap_ProductWarrantyAccrual" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyAccrual" xlink:to="us-gaap_ProductWarrantyAccrual_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProductWarrantyAccrual_lbl" xml:lang="en-US">Standard and Extended Product Warranty Accrual</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_ProductWarrantyAccrual_lbl" xml:lang="en-US">Total accrued warranty reserve</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="us-gaap_LineOfCreditFacilityTable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_LineOfCreditFacilityTable_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityTable_lbl" xml:lang="en-US">Line of Credit Facility [Table]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityAxis_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CreditFacilityAxis_lbl" xml:lang="en-US">Credit Facility [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="us-gaap_CreditFacilityDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CreditFacilityDomain_lbl" xml:lang="en-US">Credit Facility [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="us-gaap_RevolvingCreditFacilityMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevolvingCreditFacilityMember" xlink:to="us-gaap_RevolvingCreditFacilityMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevolvingCreditFacilityMember_lbl" xml:lang="en-US">Revolving credit facility</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TermLoanMember" xlink:label="tcmd_TermLoanMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_TermLoanMember" xlink:to="tcmd_TermLoanMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_TermLoanMember_lbl" xml:lang="en-US">Represents information pertaining to term loan.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_TermLoanMember_lbl" xml:lang="en-US">Term Loan</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeAxis" xlink:to="srt_RangeAxis_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_RangeAxis_lbl" xml:lang="en-US">Range [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeMember" xlink:to="srt_RangeMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_RangeMember_lbl" xml:lang="en-US">Range [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MaximumMember" xlink:to="srt_MaximumMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_MaximumMember_lbl" xml:lang="en-US">Maximum</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="srt_MaximumMember_lbl" xml:lang="en-US">Maximum</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MinimumMember" xlink:to="srt_MinimumMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_MinimumMember_lbl" xml:lang="en-US">Minimum</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="srt_MinimumMember_lbl" xml:lang="en-US">Minimum</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateAxis_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_VariableRateAxis_lbl" xml:lang="en-US">Variable Rate [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_VariableRateDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_VariableRateDomain_lbl" xml:lang="en-US">Variable Rate [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FederalFundsEffectiveSwapRateMember" xlink:label="us-gaap_FederalFundsEffectiveSwapRateMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FederalFundsEffectiveSwapRateMember" xlink:to="us-gaap_FederalFundsEffectiveSwapRateMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FederalFundsEffectiveSwapRateMember_lbl" xml:lang="en-US">Federal Funds</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BaseRateMember" xlink:label="us-gaap_BaseRateMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BaseRateMember" xlink:to="us-gaap_BaseRateMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BaseRateMember_lbl" xml:lang="en-US">Base Rate</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SecuredOvernightFinancingRateSofrMember" xlink:label="us-gaap_SecuredOvernightFinancingRateSofrMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SecuredOvernightFinancingRateSofrMember" xlink:to="us-gaap_SecuredOvernightFinancingRateSofrMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SecuredOvernightFinancingRateSofrMember_lbl" xml:lang="en-US">Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SecuredOvernightFinancingRateSofrMember_lbl" xml:lang="en-US">SOFR</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="us-gaap_LineOfCreditFacilityLineItems" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityLineItems_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityLineItems_lbl" xml:lang="en-US">Line of Credit Facility [Line Items]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LineOfCreditFacilityLineItems_lbl" xml:lang="en-US">Credit Agreement</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="us-gaap_DebtInstrumentFaceAmount" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentFaceAmount" xlink:to="us-gaap_DebtInstrumentFaceAmount_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentFaceAmount_lbl" xml:lang="en-US">Debt Instrument, Face Amount</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DebtInstrumentFaceAmount_lbl" xml:lang="en-US">Debt instrument face amount</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl" xml:lang="en-US">Line of Credit Facility, Maximum Borrowing Capacity</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl" xml:lang="en-US">Line of credit</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity" xlink:label="tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity" xlink:to="tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity_lbl" xml:lang="en-US">Line Of Credit, Threshold Contingent Increase In Borrowing Capacity</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity_lbl" xml:lang="en-US">Line Of Credit, Threshold Contingent Increase In Borrowing Capacity</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity_lbl" xml:lang="en-US">Line of credit, threshold contingent increase in borrowing capacity</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_CreditAgreementTotalAggregatePrincipalAmount" xlink:label="tcmd_CreditAgreementTotalAggregatePrincipalAmount" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_CreditAgreementTotalAggregatePrincipalAmount" xlink:to="tcmd_CreditAgreementTotalAggregatePrincipalAmount_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_CreditAgreementTotalAggregatePrincipalAmount_lbl" xml:lang="en-US">The total aggregate principal amount under the credit agreement.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_CreditAgreementTotalAggregatePrincipalAmount_lbl" xml:lang="en-US">Credit Agreement, Total Aggregate Principal Amount</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_CreditAgreementTotalAggregatePrincipalAmount_lbl" xml:lang="en-US">Credit agreement, total aggregate principal amount</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebt_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebt_lbl" xml:lang="en-US">Long-term Debt</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LongTermDebt_lbl" xml:lang="en-US">Long-term debt</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LongTermDebt_lbl" xml:lang="en-US">Net Note Payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCredit" xlink:to="us-gaap_LineOfCredit_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCredit_lbl" xml:lang="en-US">Long-term Line of Credit</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LineOfCredit_lbl" xml:lang="en-US">Credit facility outstanding amount</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment" xlink:label="tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment" xlink:to="tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment_lbl" xml:lang="en-US">The amount of mandatory principal prepayment paid</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment_lbl" xml:lang="en-US">Debt Instrument, Payment of Mandatory Principal Prepayment</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment_lbl" xml:lang="en-US">Principal prepayment of term loan</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl" xml:lang="en-US">Debt Instrument, Basis Spread on Variable Rate</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl" xml:lang="en-US">Basis spread (as a percent)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:label="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:to="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_lbl" xml:lang="en-US">Line of Credit Facility, Unused Capacity, Commitment Fee Percentage</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_lbl" xml:lang="en-US">Unused line fee (as a percent)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfDebt" xlink:label="us-gaap_ProceedsFromIssuanceOfDebt" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromIssuanceOfDebt" xlink:to="us-gaap_ProceedsFromIssuanceOfDebt_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromIssuanceOfDebt_lbl" xml:lang="en-US">Proceeds from Issuance of Debt</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProceedsFromIssuanceOfDebt_lbl" xml:lang="en-US">Increase in term debt</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:label="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:to="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment_lbl" xml:lang="en-US">Debt Instrument, Frequency of Periodic Payment</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment_lbl" xml:lang="en-US">Debt instrument frequency of periodic payment</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentPeriodicPayment" xlink:label="us-gaap_DebtInstrumentPeriodicPayment" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentPeriodicPayment" xlink:to="us-gaap_DebtInstrumentPeriodicPayment_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentPeriodicPayment_lbl" xml:lang="en-US">Debt Instrument, Periodic Payment</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DebtInstrumentPeriodicPayment_lbl" xml:lang="en-US">Debt instrument periodic payment</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtByMaturityAbstract" xlink:label="us-gaap_LongTermDebtByMaturityAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtByMaturityAbstract" xlink:to="us-gaap_LongTermDebtByMaturityAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtByMaturityAbstract_lbl" xml:lang="en-US">Long-term Debt, Fiscal Year Maturity [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LongTermDebtByMaturityAbstract_lbl" xml:lang="en-US">Maturities of notes payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_lbl" xml:lang="en-US">Long-Term Debt, Maturity, Remainder of Fiscal Year</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_lbl" xml:lang="en-US">2024 (July 1 - December 31)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl" xml:lang="en-US">Long-Term Debt, Maturity, Year One</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl" xml:lang="en-US">2025</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl" xml:lang="en-US">Long-Term Debt, Maturity, Year Two</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl" xml:lang="en-US">2026</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentCarryingAmount" xlink:to="us-gaap_DebtInstrumentCarryingAmount_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentCarryingAmount_lbl" xml:lang="en-US">Long-Term Debt, Gross</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_DebtInstrumentCarryingAmount_lbl" xml:lang="en-US">Total</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="us-gaap_DeferredFinanceCostsNet" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredFinanceCostsNet" xlink:to="us-gaap_DeferredFinanceCostsNet_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredFinanceCostsNet_lbl" xml:lang="en-US">Debt Issuance Costs, Net</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DeferredFinanceCostsNet_lbl" xml:lang="en-US">Less: Deferred financing fees</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtCurrent" xlink:to="us-gaap_LongTermDebtCurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtCurrent_lbl" xml:lang="en-US">Long-Term Debt, Current Maturities</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_LongTermDebtCurrent_lbl" xml:lang="en-US">Less: Current portion of note payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtNoncurrent" xlink:to="us-gaap_LongTermDebtNoncurrent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtNoncurrent_lbl" xml:lang="en-US">Long-term Debt, Excluding Current Maturities</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebtNoncurrent_lbl" xml:lang="en-US">Non-current portion of note payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeaseDescriptionTable" xlink:label="us-gaap_LesseeLeaseDescriptionTable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeLeaseDescriptionTable" xlink:to="us-gaap_LesseeLeaseDescriptionTable_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeLeaseDescriptionTable_lbl" xml:lang="en-US">Lessee, Lease, Description [Table]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis_lbl" xml:lang="en-US">Property, Plant and Equipment, Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain_lbl" xml:lang="en-US">Property, Plant and Equipment, Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BuildingMember" xlink:label="us-gaap_BuildingMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BuildingMember" xlink:to="us-gaap_BuildingMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BuildingMember_lbl" xml:lang="en-US">Building</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquipmentMember" xlink:label="us-gaap_EquipmentMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquipmentMember" xlink:to="us-gaap_EquipmentMember_lbl" />
    <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</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_CorporateHeadQuarterInitialLeaseMember" xlink:label="tcmd_CorporateHeadQuarterInitialLeaseMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_CorporateHeadQuarterInitialLeaseMember" xlink:to="tcmd_CorporateHeadQuarterInitialLeaseMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_CorporateHeadQuarterInitialLeaseMember_lbl" xml:lang="en-US">Represents member for initial lease for corporate head quarter.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_CorporateHeadQuarterInitialLeaseMember_lbl" xml:lang="en-US">Initial lease</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_CorporateHeadQuarterSecondLeaseMember" xlink:label="tcmd_CorporateHeadQuarterSecondLeaseMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_CorporateHeadQuarterSecondLeaseMember" xlink:to="tcmd_CorporateHeadQuarterSecondLeaseMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_CorporateHeadQuarterSecondLeaseMember_lbl" xml:lang="en-US">Represents member for second lease corporate head quarter.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_CorporateHeadQuarterSecondLeaseMember_lbl" xml:lang="en-US">Second lease</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_CorporateHeadQuarterThirdLeaseMember" xlink:label="tcmd_CorporateHeadQuarterThirdLeaseMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_CorporateHeadQuarterThirdLeaseMember" xlink:to="tcmd_CorporateHeadQuarterThirdLeaseMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_CorporateHeadQuarterThirdLeaseMember_lbl" xml:lang="en-US">Represents member for third lease corporate head quarter.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_CorporateHeadQuarterThirdLeaseMember_lbl" xml:lang="en-US">Third lease</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeaseDescriptionLineItems" xlink:label="us-gaap_LesseeLeaseDescriptionLineItems" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="us-gaap_LesseeLeaseDescriptionLineItems_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeLeaseDescriptionLineItems_lbl" xml:lang="en-US">Lessee, Lease, Description [Line Items]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LesseeLeaseDescriptionLineItems_lbl" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseTermOfContract" xlink:label="us-gaap_LesseeOperatingLeaseTermOfContract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseTermOfContract" xlink:to="us-gaap_LesseeOperatingLeaseTermOfContract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseTermOfContract_lbl" xml:lang="en-US">Lessee, Operating Lease, Term of Contract</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LesseeOperatingLeaseTermOfContract_lbl" xml:lang="en-US">Lease terms</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AreaOfLand" xlink:label="us-gaap_AreaOfLand" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AreaOfLand" xlink:to="us-gaap_AreaOfLand_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AreaOfLand_lbl" xml:lang="en-US">Area of Land</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AreaOfLand_lbl" xml:lang="en-US">Area of office space</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AdditionalOfficeSpaceAdded" xlink:label="tcmd_AdditionalOfficeSpaceAdded" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_AdditionalOfficeSpaceAdded" xlink:to="tcmd_AdditionalOfficeSpaceAdded_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_AdditionalOfficeSpaceAdded_lbl" xml:lang="en-US">Additional office space added to the lease.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_AdditionalOfficeSpaceAdded_lbl" xml:lang="en-US">Additional office space added</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_AdditionalOfficeSpaceAdded_lbl" xml:lang="en-US">Additional office space added to the lease</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend" xlink:to="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend_lbl" xml:lang="en-US">Lessee, Operating Lease, Existence of Option to Extend [true false]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend_lbl" xml:lang="en-US">Option to renew</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAndLiabilitiesLesseeAbstract" xlink:label="us-gaap_AssetsAndLiabilitiesLesseeAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract" xlink:to="us-gaap_AssetsAndLiabilitiesLesseeAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsAndLiabilitiesLesseeAbstract_lbl" xml:lang="en-US">Assets and Liabilities, Lessee [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AssetsAndLiabilitiesLesseeAbstract_lbl" xml:lang="en-US">Lease-related assets and liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:to="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList_lbl" xml:lang="en-US">Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:to="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_lbl" xml:lang="en-US">Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_lbl" xml:lang="en-US">Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLiability_lbl" xml:lang="en-US">Operating Lease, Liability</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_OperatingLeaseLiability_lbl" xml:lang="en-US">Present value of future minimum lease payments</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl" xml:lang="en-US">Operating Lease, Weighted Average Remaining Lease Term</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl" xml:lang="en-US">Weighted average remaining lease term</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl" xml:lang="en-US">Operating Lease, Weighted Average Discount Rate, Percent</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl" xml:lang="en-US">Weighted average discount rate</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeasePayments" xlink:to="us-gaap_OperatingLeasePayments_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeasePayments_lbl" xml:lang="en-US">Operating Lease, Payments</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OperatingLeasePayments_lbl" xml:lang="en-US">Cash paid for operating lease liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_lbl" />
    <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 Asset Obtained in Exchange for Operating Lease Liability</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_lbl" xml:lang="en-US">Non-cash right of use assets obtained in exchange for new operating lease obligations</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:label="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl" xml:lang="en-US">Operating Lease Liabilities, Payments Due [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl" xml:lang="en-US">Undiscounted cash flows</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Remainder of Fiscal Year</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_lbl" xml:lang="en-US">2024 (July 1 - December 31)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xml:lang="en-US">2025</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Two</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" xml:lang="en-US">2026</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Three</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" xml:lang="en-US">2027</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Four</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl" xml:lang="en-US">2028</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:label="tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:to="tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_lbl" xml:lang="en-US">Amount of lessee's undiscounted obligation for lease payment for operating lease due after 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).</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_lbl" xml:lang="en-US">Lessee Operating Lease Liability Payments Due after Year Four</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_lbl" xml:lang="en-US">Thereafter</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due</link:label>
    <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 minimum lease payments</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xml:lang="en-US">Less: Amount of lease payments representing interest</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:to="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense_lbl" xml:lang="en-US">Operating Lease, Right-of-Use Asset, Amortization Expense</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense_lbl" xml:lang="en-US">Operating lease cost</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTable" xlink:label="us-gaap_ConcentrationRiskTable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskTable" xlink:to="us-gaap_ConcentrationRiskTable_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskTable_lbl" xml:lang="en-US">Concentration Risk [Table]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis_lbl" />
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_lbl" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsTotalMember" xlink:label="us-gaap_CostOfGoodsTotalMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfGoodsTotalMember" xlink:to="us-gaap_CostOfGoodsTotalMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CostOfGoodsTotalMember_lbl" xml:lang="en-US">Purchases</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskByTypeAxis_lbl" />
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_ConcentrationRiskTypeDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskTypeDomain_lbl" xml:lang="en-US">Concentration Risk Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplierConcentrationRiskMember" xlink:label="us-gaap_SupplierConcentrationRiskMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplierConcentrationRiskMember" xlink:to="us-gaap_SupplierConcentrationRiskMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SupplierConcentrationRiskMember_lbl" xml:lang="en-US">Vendor</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis" xlink:label="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis" xlink:to="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_lbl" xml:lang="en-US">Supplier [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain" xlink:label="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain" xlink:to="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_lbl" xml:lang="en-US">Supplier [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_VendorOneMember" xlink:label="tcmd_VendorOneMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_VendorOneMember" xlink:to="tcmd_VendorOneMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_VendorOneMember_lbl" xml:lang="en-US">Represents the information pertaining to vendor one.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_VendorOneMember_lbl" xml:lang="en-US">Vendor One</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_VendorTwoMember" xlink:label="tcmd_VendorTwoMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_VendorTwoMember" xlink:to="tcmd_VendorTwoMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_VendorTwoMember_lbl" xml:lang="en-US">Represents the information pertaining to vendor two.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_VendorTwoMember_lbl" xml:lang="en-US">Vendor Two</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="us-gaap_ConcentrationRiskLineItems" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskLineItems" xlink:to="us-gaap_ConcentrationRiskLineItems_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskLineItems_lbl" xml:lang="en-US">Concentration Risk [Line Items]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ConcentrationRiskLineItems_lbl" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_NumberOfVendors" xlink:label="tcmd_NumberOfVendors" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_NumberOfVendors" xlink:to="tcmd_NumberOfVendors_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_NumberOfVendors_lbl" xml:lang="en-US">Represents the number of vendors.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_NumberOfVendors_lbl" xml:lang="en-US">Number Of Vendors</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_NumberOfVendors_lbl" xml:lang="en-US">Number of vendors</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskPercentage1" xlink:to="us-gaap_ConcentrationRiskPercentage1_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ConcentrationRiskPercentage1_lbl" xml:lang="en-US">Total purchases (in percentage)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationFiscalYearMaturityAbstract" xlink:label="us-gaap_PurchaseObligationFiscalYearMaturityAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PurchaseObligationFiscalYearMaturityAbstract" xlink:to="us-gaap_PurchaseObligationFiscalYearMaturityAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PurchaseObligationFiscalYearMaturityAbstract_lbl" xml:lang="en-US">Purchase Obligation, Fiscal Year Maturity [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PurchaseObligationFiscalYearMaturityAbstract_lbl" xml:lang="en-US">Purchase commitments</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueInNextTwelveMonths" xlink:label="us-gaap_PurchaseObligationDueInNextTwelveMonths" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PurchaseObligationDueInNextTwelveMonths" xlink:to="us-gaap_PurchaseObligationDueInNextTwelveMonths_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PurchaseObligationDueInNextTwelveMonths_lbl" xml:lang="en-US">Purchase Obligation, Due in Next Twelve Months</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_PurchaseObligationDueInNextTwelveMonths_lbl" xml:lang="en-US">Purchase orders issued</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanTable" xlink:label="us-gaap_DefinedContributionPlanTable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedContributionPlanTable" xlink:to="us-gaap_DefinedContributionPlanTable_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DefinedContributionPlanTable_lbl" xml:lang="en-US">Defined Contribution Plan [Table]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetirementPlanNameAxis" xlink:label="us-gaap_RetirementPlanNameAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetirementPlanNameAxis" xlink:to="us-gaap_RetirementPlanNameAxis_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RetirementPlanNameAxis_lbl" xml:lang="en-US">Retirement Plan Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetirementPlanNameDomain" xlink:label="us-gaap_RetirementPlanNameDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetirementPlanNameDomain" xlink:to="us-gaap_RetirementPlanNameDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RetirementPlanNameDomain_lbl" xml:lang="en-US">Defined Contribution Plan Name [Domain] (Deprecated 2017-01-31)</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DefinedContribution401kRetirementPlanMember" xlink:label="tcmd_DefinedContribution401kRetirementPlanMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_DefinedContribution401kRetirementPlanMember" xlink:to="tcmd_DefinedContribution401kRetirementPlanMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_DefinedContribution401kRetirementPlanMember_lbl" xml:lang="en-US">Represent information pertaining to Defined Contribution 401K Retirement Plan</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_DefinedContribution401kRetirementPlanMember_lbl" xml:lang="en-US">401(k)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanDisclosureLineItems" xlink:label="us-gaap_DefinedContributionPlanDisclosureLineItems" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedContributionPlanDisclosureLineItems" xlink:to="us-gaap_DefinedContributionPlanDisclosureLineItems_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DefinedContributionPlanDisclosureLineItems_lbl" xml:lang="en-US">Defined Contribution Plan Disclosure [Line Items]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DefinedContributionPlanDisclosureLineItems_lbl" xml:lang="en-US">Retirement Plan</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:label="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:to="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount_lbl" xml:lang="en-US">Defined Contribution Plan, Employer Discretionary Contribution Amount</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount_lbl" xml:lang="en-US">Discretionary contributions</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LossContingenciesTable" xlink:label="us-gaap_LossContingenciesTable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LossContingenciesTable" xlink:to="us-gaap_LossContingenciesTable_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LossContingenciesTable_lbl" xml:lang="en-US">Loss Contingencies [Table]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_LitigationCaseAxis" xlink:label="srt_LitigationCaseAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseAxis_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_LitigationCaseAxis_lbl" xml:lang="en-US">Litigation Case [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_LitigationCaseTypeDomain" xlink:to="srt_LitigationCaseTypeDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_LitigationCaseTypeDomain_lbl" xml:lang="en-US">Litigation Case [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_WeaverLawsuitMember" xlink:label="tcmd_WeaverLawsuitMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_WeaverLawsuitMember" xlink:to="tcmd_WeaverLawsuitMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_WeaverLawsuitMember_lbl" xml:lang="en-US">Information relating to Weaver Lawsuit.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_WeaverLawsuitMember_lbl" xml:lang="en-US">Weaver Lawsuit [Member]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_WeaverLawsuitMember_lbl" xml:lang="en-US">The "Weaver Lawsuit"</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LossContingenciesLineItems" xlink:label="us-gaap_LossContingenciesLineItems" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="us-gaap_LossContingenciesLineItems_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LossContingenciesLineItems_lbl" xml:lang="en-US">Loss Contingencies [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_NumberOfOfficerAndDirectors" xlink:label="tcmd_NumberOfOfficerAndDirectors" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_NumberOfOfficerAndDirectors" xlink:to="tcmd_NumberOfOfficerAndDirectors_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_NumberOfOfficerAndDirectors_lbl" xml:lang="en-US">Number of officers and directors.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_NumberOfOfficerAndDirectors_lbl" xml:lang="en-US">Number of officer and directors</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_NumberOfOfficerAndDirectors_lbl" xml:lang="en-US">Number of former officers and directors</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LitigationSettlementLoss" xlink:label="us-gaap_LitigationSettlementLoss" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LitigationSettlementLoss" xlink:to="us-gaap_LitigationSettlementLoss_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LitigationSettlementLoss_lbl" xml:lang="en-US">Litigation Settlement, Loss</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LitigationSettlementLoss_lbl" xml:lang="en-US">Litigation fees and expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:to="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_lbl" xml:lang="en-US">Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameAxis_lbl" />
    <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="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameDomain" xlink:to="us-gaap_PlanNameDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PlanNameDomain_lbl" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_EquityIncentivePlan2016Member" xlink:label="tcmd_EquityIncentivePlan2016Member" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_EquityIncentivePlan2016Member" xlink:to="tcmd_EquityIncentivePlan2016Member_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_EquityIncentivePlan2016Member_lbl" xml:lang="en-US">Represents information pertaining to the 2016 Equity Incentive Plan (the "2016 Plan").</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_EquityIncentivePlan2016Member_lbl" xml:lang="en-US">2016 Plan</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingAndMarketingExpenseMember" xlink:label="us-gaap_SellingAndMarketingExpenseMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingAndMarketingExpenseMember" xlink:to="us-gaap_SellingAndMarketingExpenseMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SellingAndMarketingExpenseMember_lbl" xml:lang="en-US">Sales and marketing expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="us-gaap_ResearchAndDevelopmentExpenseMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ResearchAndDevelopmentExpenseMember" xlink:to="us-gaap_ResearchAndDevelopmentExpenseMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ResearchAndDevelopmentExpenseMember_lbl" xml:lang="en-US">Research and development expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="us-gaap_GeneralAndAdministrativeExpenseMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeneralAndAdministrativeExpenseMember" xlink:to="us-gaap_GeneralAndAdministrativeExpenseMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GeneralAndAdministrativeExpenseMember_lbl" xml:lang="en-US">Reimbursement, general and administrative expenses</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_GeneralAndAdministrativeExpenseMember_lbl" xml:lang="en-US">Reimbursement, general and administrative expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAbstract" xlink:label="us-gaap_ShareBasedCompensationAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationAbstract" xlink:to="us-gaap_ShareBasedCompensationAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationAbstract_lbl" xml:lang="en-US">Share-based Compensation [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationAbstract_lbl" xml:lang="en-US">Stock-based compensation</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_lbl" xml:lang="en-US">Number of shares authorized</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage_lbl" xml:lang="en-US">Represents information pertaining to the automatic annual increase in shares reserved and available for issuance as a percentage to outstanding number of shares. The automatic increases occur on the first day of the year beginning January 1, 2017.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage_lbl" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award, Automatic Annual Increase In Shares Reserved And Available For Issuance, Percentage</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage_lbl" xml:lang="en-US">Automatic annual increase to the number of shares reserved and available for issuance as a percentage of outstanding common stock (as a percent)</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber_lbl" xml:lang="en-US">Represents information pertaining to the automatic annual increase in shares reserved and available for issuance. The automatic increases occur on the first day of the year beginning January 1, 2017.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber_lbl" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award, Automatic Annual Increase In Shares Reserved And Available For Issuance, Number</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber_lbl" xml:lang="en-US">Automatic annual increase to the number of shares reserved and available for issuance</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Number of Additional Shares Authorized</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized_lbl" xml:lang="en-US">Increase in number of shares reserved and available for issuance</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl" xml:lang="en-US">Common Stock, Capital Shares Reserved for Future Issuance</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl" xml:lang="en-US">Shares reserved</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl" xml:lang="en-US">Shares available for future issuance</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_lbl" xml:lang="en-US">Allocated Share-based Compensation Expense</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_lbl" xml:lang="en-US">Compensation expense</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_lbl" xml:lang="en-US">Stock-based compensation expense</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_lbl" />
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_VestingAxis" xlink:label="us-gaap_VestingAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VestingAxis" xlink:to="us-gaap_VestingAxis_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_VestingAxis_lbl" xml:lang="en-US">Vesting [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VestingDomain" xlink:label="us-gaap_VestingDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VestingDomain" xlink:to="us-gaap_VestingDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_VestingDomain_lbl" xml:lang="en-US">Vesting [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheOneMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:to="us-gaap_ShareBasedCompensationAwardTrancheOneMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheOneMember_lbl" xml:lang="en-US">Tranche one</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAwardTrancheTwoMember" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheTwoMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationAwardTrancheTwoMember" xlink:to="us-gaap_ShareBasedCompensationAwardTrancheTwoMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheTwoMember_lbl" xml:lang="en-US">Tranche two</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAwardTrancheThreeMember" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheThreeMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationAwardTrancheThreeMember" xlink:to="us-gaap_ShareBasedCompensationAwardTrancheThreeMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheThreeMember_lbl" xml:lang="en-US">Share-Based Payment Arrangement, Tranche Three [Member]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheThreeMember_lbl" xml:lang="en-US">Tranche three</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOptionMember" xlink:to="us-gaap_EmployeeStockOptionMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EmployeeStockOptionMember_lbl" xml:lang="en-US">Common stock options</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TwoThousandTwentySixPsuMember" xlink:label="tcmd_TwoThousandTwentySixPsuMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_TwoThousandTwentySixPsuMember" xlink:to="tcmd_TwoThousandTwentySixPsuMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_TwoThousandTwentySixPsuMember_lbl" xml:lang="en-US">Represents information pertaining to PSUs granted in year 2026.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_TwoThousandTwentySixPsuMember_lbl" xml:lang="en-US">Two Thousand Twenty Six Psu [Member]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_TwoThousandTwentySixPsuMember_lbl" xml:lang="en-US">2026 PSUs</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TwoThousandTwentyFivePsuMember" xlink:label="tcmd_TwoThousandTwentyFivePsuMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_TwoThousandTwentyFivePsuMember" xlink:to="tcmd_TwoThousandTwentyFivePsuMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_TwoThousandTwentyFivePsuMember_lbl" xml:lang="en-US">Represents information pertaining to PSUs granted in year 2025.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_TwoThousandTwentyFivePsuMember_lbl" xml:lang="en-US">Two Thousand Twenty Five Psu [Member]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_TwoThousandTwentyFivePsuMember_lbl" xml:lang="en-US">2025 PSUs</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TwoThousandTwentyFourPsuMember" xlink:label="tcmd_TwoThousandTwentyFourPsuMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_TwoThousandTwentyFourPsuMember" xlink:to="tcmd_TwoThousandTwentyFourPsuMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_TwoThousandTwentyFourPsuMember_lbl" xml:lang="en-US">Represents information pertaining to PSUs granted in year 2024.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_TwoThousandTwentyFourPsuMember_lbl" xml:lang="en-US">Two Thousand Twenty Four Psu [Member]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_TwoThousandTwentyFourPsuMember_lbl" xml:lang="en-US">2024 PSUs</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TwoThousandTwentyThreePsuMember" xlink:label="tcmd_TwoThousandTwentyThreePsuMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_TwoThousandTwentyThreePsuMember" xlink:to="tcmd_TwoThousandTwentyThreePsuMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_TwoThousandTwentyThreePsuMember_lbl" xml:lang="en-US">Represents information pertaining to PSUs granted in year 2023.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_TwoThousandTwentyThreePsuMember_lbl" xml:lang="en-US">Two Thousand Twenty Three Psu [Member]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_TwoThousandTwentyThreePsuMember_lbl" xml:lang="en-US">2023 PSUs</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl" xml:lang="en-US">Stockholders' Equity</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Additional General Disclosures [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_lbl" xml:lang="en-US">Stock-based compensation, general disclosures.</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl" xml:lang="en-US">Vesting period (in years)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_lbl" xml:lang="en-US">Term (in years)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_lbl" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Stock Options</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_lbl" xml:lang="en-US">Total unrecognized pre-tax compensation expense related to nonvested stock option awards</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_lbl" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Share-based Awards Other than Options</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_lbl" xml:lang="en-US">Total unrecognized pre-tax compensation expense related to awards</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl" xml:lang="en-US">Weighted-average period over which unrecognized compensation cost is expected to be recognized</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods_lbl" xml:lang="en-US">The number of performance awards under share-based payment arrangement.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods_lbl" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Performance Periods</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods_lbl" xml:lang="en-US">Number of performance awards under share-based payment arrangement</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_lbl" xml:lang="en-US">Award vesting percentage</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin_lbl" xml:lang="en-US">The percent of revenue change and adjusted EBITDA margin to be achieved under performance goals of awards under share based payment arrangement.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin_lbl" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Performance Goals, Revenue Change and Adjusted EBITDA Margin</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin_lbl" xml:lang="en-US">Performance goals revenue change and adjusted EBITDA margin</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding [Roll Forward]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_lbl" xml:lang="en-US">Options Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xml:lang="en-US">Outstanding at end of period</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xml:lang="en-US">Outstanding at beginning of period</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Expirations in Period</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_lbl" xml:lang="en-US">Cancelled/Expired</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_lbl" xml:lang="en-US">Weighted Average Exercise Price Per Share</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" xml:lang="en-US">Outstanding at end of period</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" xml:lang="en-US">Outstanding at beginning of period</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Exercised</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Cancelled</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Cancelled/Expired</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Additional Disclosures [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_lbl" xml:lang="en-US">Other information</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl" xml:lang="en-US">Options exercisable number of shares exercisable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl" xml:lang="en-US">Options exercisable, weighted-average exercise price</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl" xml:lang="en-US">Weighted average remaining contractual life (in years)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl" xml:lang="en-US">Options exercisable, weighted-average remaining contractual life</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl" xml:lang="en-US">Aggregate Intrinsic Value, Options outstanding</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_lbl" xml:lang="en-US">Aggregate Intrinsic Value, Exercised</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_lbl" xml:lang="en-US">Aggregate Intrinsic Value, Options exercisable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl" xml:lang="en-US">Units Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl" xml:lang="en-US">Restricted stock unit awards outstanding at the end of the period (in shares)</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl" xml:lang="en-US">Restricted stock unit awards outstanding at the beginning of the period (in shares)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_lbl" xml:lang="en-US">Share-based awards granted</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_lbl" xml:lang="en-US">Granted (in shares)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl" xml:lang="en-US">Vested (in shares)</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod_lbl" xml:lang="en-US">The number of equity-based payment instruments, excluding stock (or unit) options, that were cancelled during the reporting period.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Cancelled in Period</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod_lbl" xml:lang="en-US">Cancelled (in shares)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_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 [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_lbl" xml:lang="en-US">Weighted Average Grant Date Fair Value Per Unit</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Restricted stock unit awards outstanding at the end of the period (in dollars per share)</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Restricted stock unit awards outstanding at the beginning of the period (in dollars per share)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Granted (in dollars per share)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Vested (in dollars per share)</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were cancelled during the reporting period.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Cancellations, Weighted Average Grant Date Fair Value</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Cancelled (in dollars per share)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_lbl" xml:lang="en-US">Aggregate Intrinsic Value</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value, Outstanding</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_lbl" xml:lang="en-US">Restricted stock unit awards, Average Intrinsic Value</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfStockByClassTable" xlink:label="us-gaap_ScheduleOfStockByClassTable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfStockByClassTable" xlink:to="us-gaap_ScheduleOfStockByClassTable_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfStockByClassTable_lbl" xml:lang="en-US">Schedule of Stock by Class [Table]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockMember" xlink:label="us-gaap_EmployeeStockMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockMember" xlink:to="us-gaap_EmployeeStockMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeStockMember_lbl" xml:lang="en-US">Employee Stock Purchase Plan</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfStockLineItems" xlink:label="us-gaap_ClassOfStockLineItems" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ClassOfStockLineItems" xlink:to="us-gaap_ClassOfStockLineItems_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ClassOfStockLineItems_lbl" xml:lang="en-US">Class of Stock [Line Items]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ClassOfStockLineItems_lbl" xml:lang="en-US">Stockholders' Equity</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock, Percent</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_lbl" xml:lang="en-US">Purchase price of common stock under plan (as a percent)</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod" xlink:label="tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod" xlink:to="tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod_lbl" xml:lang="en-US">Period which an employee's right to purchase shares of stock at a discount, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod_lbl" xml:lang="en-US">Employee Stock Purchase Plan, Offering Periods, Period</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod_lbl" xml:lang="en-US">Offering period (in months)</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_IncrementalSharesToBeIssuedPercentage" xlink:label="tcmd_IncrementalSharesToBeIssuedPercentage" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_IncrementalSharesToBeIssuedPercentage" xlink:to="tcmd_IncrementalSharesToBeIssuedPercentage_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_IncrementalSharesToBeIssuedPercentage_lbl" xml:lang="en-US">Represents the incremental annual share percentage increase minimum.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_IncrementalSharesToBeIssuedPercentage_lbl" xml:lang="en-US">Incremental Shares To Be Issued Percentage</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_IncrementalSharesToBeIssuedPercentage_lbl" xml:lang="en-US">Incremental share increase (as a percent)</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_IncrementalShareIncrease" xlink:label="tcmd_IncrementalShareIncrease" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_IncrementalShareIncrease" xlink:to="tcmd_IncrementalShareIncrease_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_IncrementalShareIncrease_lbl" xml:lang="en-US">Represents the minimum increase in shares on an annual basis.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_IncrementalShareIncrease_lbl" xml:lang="en-US">Incremental Share Increase</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_IncrementalShareIncrease_lbl" xml:lang="en-US">Incremental share increase (in shares)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_DisaggregationOfRevenueTable_lbl" />
    <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="tcmd-20240630.xsd#tcmd_LymphedemaProductsMember" xlink:label="tcmd_LymphedemaProductsMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_LymphedemaProductsMember" xlink:to="tcmd_LymphedemaProductsMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_LymphedemaProductsMember_lbl" xml:lang="en-US">Represents information pertaining to Lymphedema products.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_LymphedemaProductsMember_lbl" xml:lang="en-US">Lymphedema products</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_LymphedemaProductsMember_lbl" xml:lang="en-US">Lymphedema products</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AirwayClearanceProductsMember" xlink:label="tcmd_AirwayClearanceProductsMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_AirwayClearanceProductsMember" xlink:to="tcmd_AirwayClearanceProductsMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_AirwayClearanceProductsMember_lbl" xml:lang="en-US">Represents information pertaining to Airway clearance products.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_AirwayClearanceProductsMember_lbl" xml:lang="en-US">Airway clearance products</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_AirwayClearanceProductsMember_lbl" xml:lang="en-US">Airway clearance products</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_MajorCustomersAxis_lbl" />
    <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="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="srt_NameOfMajorCustomerDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_NameOfMajorCustomerDomain_lbl" xml:lang="en-US">Customer [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_PrivateInsurersMember" xlink:label="tcmd_PrivateInsurersMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_PrivateInsurersMember" xlink:to="tcmd_PrivateInsurersMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_PrivateInsurersMember_lbl" xml:lang="en-US">Represents information pertaining to private insurers and other payers.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_PrivateInsurersMember_lbl" xml:lang="en-US">Private insurers and other payers</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_PrivateInsurersMember_lbl" xml:lang="en-US">Private insurers and other payers</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_VeteransAdministrationMember" xlink:label="tcmd_VeteransAdministrationMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_VeteransAdministrationMember" xlink:to="tcmd_VeteransAdministrationMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_VeteransAdministrationMember_lbl" xml:lang="en-US">Represents information pertaining to veterans administration.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_VeteransAdministrationMember_lbl" xml:lang="en-US">Veterans Administration</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_VeteransAdministrationMember_lbl" xml:lang="en-US">Veterans Administration</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_MedicareMember" xlink:label="tcmd_MedicareMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_MedicareMember" xlink:to="tcmd_MedicareMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_MedicareMember_lbl" xml:lang="en-US">Represents information pertaining to government payer medicare.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_MedicareMember_lbl" xml:lang="en-US">Medicare</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_MedicareMember_lbl" xml:lang="en-US">Medicare</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DurableMedicalEquipmentDistributorsMember" xlink:label="tcmd_DurableMedicalEquipmentDistributorsMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_DurableMedicalEquipmentDistributorsMember" xlink:to="tcmd_DurableMedicalEquipmentDistributorsMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_DurableMedicalEquipmentDistributorsMember_lbl" xml:lang="en-US">Represents information pertaining to Durable medical equipment distributors.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_DurableMedicalEquipmentDistributorsMember_lbl" xml:lang="en-US">Durable medical equipment distributors</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_DurableMedicalEquipmentDistributorsMember_lbl" xml:lang="en-US">Durable medical equipment distributors</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_DisaggregationOfRevenueLineItems_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DisaggregationOfRevenueLineItems_lbl" xml:lang="en-US">Revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_PercentageOfRevenue" xlink:label="tcmd_PercentageOfRevenue" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_PercentageOfRevenue" xlink:to="tcmd_PercentageOfRevenue_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_PercentageOfRevenue_lbl" xml:lang="en-US">Percentage of revenue disaggregated by products.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_PercentageOfRevenue_lbl" xml:lang="en-US">Percentage Of Revenue</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_PercentageOfRevenue_lbl" xml:lang="en-US">Percentage of total revenue (in percent)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesTypeLeaseLeaseIncomeAbstract" xlink:label="us-gaap_SalesTypeLeaseLeaseIncomeAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesTypeLeaseLeaseIncomeAbstract" xlink:to="us-gaap_SalesTypeLeaseLeaseIncomeAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SalesTypeLeaseLeaseIncomeAbstract_lbl" xml:lang="en-US">Sales-type Lease, Lease Income [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SalesTypeLeaseLeaseIncomeAbstract_lbl" xml:lang="en-US">Revenue from sale type lease</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesTypeLeaseRevenue" xlink:label="us-gaap_SalesTypeLeaseRevenue" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesTypeLeaseRevenue" xlink:to="us-gaap_SalesTypeLeaseRevenue_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SalesTypeLeaseRevenue_lbl" xml:lang="en-US">Sales-type Lease, Revenue</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SalesTypeLeaseRevenue_lbl" xml:lang="en-US">Sales-type lease revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsSoldSalesTypeLease" xlink:label="us-gaap_CostOfGoodsSoldSalesTypeLease" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfGoodsSoldSalesTypeLease" xlink:to="us-gaap_CostOfGoodsSoldSalesTypeLease_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CostOfGoodsSoldSalesTypeLease_lbl" xml:lang="en-US">Cost of Goods Sold, Sales-type Lease</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CostOfGoodsSoldSalesTypeLease_lbl" xml:lang="en-US">Cost of sales-type lease revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesTypeLeaseSellingProfitLoss" xlink:label="us-gaap_SalesTypeLeaseSellingProfitLoss" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesTypeLeaseSellingProfitLoss" xlink:to="us-gaap_SalesTypeLeaseSellingProfitLoss_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SalesTypeLeaseSellingProfitLoss_lbl" xml:lang="en-US">Sales-type Lease, Selling Profit (Loss)</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_SalesTypeLeaseSellingProfitLoss_lbl" xml:lang="en-US">Gross profit</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_RentToPurchaseArrangementsRentalPeriod" xlink:label="tcmd_RentToPurchaseArrangementsRentalPeriod" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_RentToPurchaseArrangementsRentalPeriod" xlink:to="tcmd_RentToPurchaseArrangementsRentalPeriod_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_RentToPurchaseArrangementsRentalPeriod_lbl" xml:lang="en-US">Rental period of rent-to-purchase arrangements.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_RentToPurchaseArrangementsRentalPeriod_lbl" xml:lang="en-US">Rent-to-purchase arrangements, Rental Period</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_RentToPurchaseArrangementsRentalPeriod_lbl" xml:lang="en-US">Rental period of rent-to-purchase arrangements</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_lbl" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Percent [Abstract]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_lbl" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Percent</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Percent</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xml:lang="en-US">Net effective rate</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xml:lang="en-US">Earnings Per Share, Basic</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xml:lang="en-US">Net income (loss) per share - Basic</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xml:lang="en-US">Earnings Per Share, Diluted</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xml:lang="en-US">Net income (loss) per share - Diluted</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_lbl" />
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_lbl" />
    <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/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain_lbl" xml:lang="en-US">Antidilutive Securities, Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PerformanceSharesMember" xlink:to="us-gaap_PerformanceSharesMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PerformanceSharesMember_lbl" xml:lang="en-US">Performance Shares [Member]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PerformanceSharesMember_lbl" xml:lang="en-US">Performance stock units</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_EmployeeStockPurchasePlanMember" xlink:label="tcmd_EmployeeStockPurchasePlanMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_EmployeeStockPurchasePlanMember" xlink:to="tcmd_EmployeeStockPurchasePlanMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_EmployeeStockPurchasePlanMember_lbl" xml:lang="en-US">Represents the information pertaining to Employee stock purchase plan shares.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_EmployeeStockPurchasePlanMember_lbl" xml:lang="en-US">Employee stock purchase plan [Member]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_EmployeeStockPurchasePlanMember_lbl" xml:lang="en-US">Employee stock purchase plan</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_lbl" xml:lang="en-US">Net Income (Loss) Per Share</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" xml:lang="en-US">Antidilutive securities excluded from computation of earnings per share</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_lbl" />
    <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 Measurements, Recurring and Nonrecurring [Table]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis_lbl" />
    <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 [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_lbl" xml:lang="en-US">Fair Value Hierarchy [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueInputsLevel3Member" xlink:to="us-gaap_FairValueInputsLevel3Member_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueInputsLevel3Member_lbl" xml:lang="en-US">Significant Unobservable Inputs (Level 3)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_lbl" />
    <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:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_lbl" xml:lang="en-US">Fair Value Measurements</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiability" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:to="us-gaap_BusinessCombinationContingentConsiderationLiability_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiability_lbl" xml:lang="en-US">Business Combination, Contingent Consideration, Liability</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiability_lbl" xml:lang="en-US">Earn-out liability, ending balance</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiability_lbl" xml:lang="en-US">Earn-out liability, beginning balance</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:to="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_lbl" xml:lang="en-US">Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_lbl" xml:lang="en-US">Fair value adjustments</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment" xlink:label="tcmd_BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment" xlink:to="tcmd_BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment_lbl" xml:lang="en-US">Amount of cash outflow for imputed interest payment on business combination contingent consideration liability.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment_lbl" xml:lang="en-US">Business Combination Contingent Consideration Liability imputed interest payment</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment_lbl" xml:lang="en-US">Imputed interest payment</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_KristieT.BurnsMember" xlink:label="tcmd_KristieT.BurnsMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_KristieT.BurnsMember" xlink:to="tcmd_KristieT.BurnsMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_KristieT.BurnsMember_lbl" xml:lang="en-US">Represents the member information pertaining to Kristie T. Burns.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_KristieT.BurnsMember_lbl" xml:lang="en-US">Kristie T. Burns [Member]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_KristieT.BurnsMember_lbl" xml:lang="en-US">Kristie T. Burns</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_WilliamW.BurkeMember" xlink:label="tcmd_WilliamW.BurkeMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_WilliamW.BurkeMember" xlink:to="tcmd_WilliamW.BurkeMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_WilliamW.BurkeMember_lbl" xml:lang="en-US">Represents the member information pertaining to William W. Burke.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_WilliamW.BurkeMember_lbl" xml:lang="en-US">William W. Burke [Member]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_WilliamW.BurkeMember_lbl" xml:lang="en-US">William W. Burke</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ElaineM.BirkemeyerMember" xlink:label="tcmd_ElaineM.BirkemeyerMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_ElaineM.BirkemeyerMember" xlink:to="tcmd_ElaineM.BirkemeyerMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_ElaineM.BirkemeyerMember_lbl" xml:lang="en-US">Represents the member information pertaining to Elaine M. Birkemeyer.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_ElaineM.BirkemeyerMember_lbl" xml:lang="en-US">Elaine M. Birkemeyer [Member]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_ElaineM.BirkemeyerMember_lbl" xml:lang="en-US">Elaine M. Birkemeyer</link:label>
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DanielL.ReuversMember" xlink:label="tcmd_DanielL.ReuversMember" />
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="tcmd_DanielL.ReuversMember" xlink:to="tcmd_DanielL.ReuversMember_lbl" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="tcmd_DanielL.ReuversMember_lbl" xml:lang="en-US">Represents the member information pertaining to Daniel L. Reuvers.</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="tcmd_DanielL.ReuversMember_lbl" xml:lang="en-US">Daniel L. Reuvers [Member]</link:label>
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="tcmd_DanielL.ReuversMember_lbl" xml:lang="en-US">Daniel L. Reuvers</link:label>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>12
<FILENAME>tcmd-20240630_pre.xml
<DESCRIPTION>EX-101.PRE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--XBRL document created with Toppan Merrill Bridge  10.7.0.1 -->
<!--Based on XBRL 2.1-->
<!--Created on: 8/5/2024 3:21:29 PM-->
<!--Modified on: 8/5/2024 3:21:29 PM-->
<link:linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DocumentDocumentAndEntityInformation" roleURI="http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#StatementCondensedConsolidatedBalanceSheets" roleURI="http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#StatementCondensedConsolidatedBalanceSheetsParenthetical" roleURI="http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#StatementCondensedConsolidatedStatementsOfOperations" roleURI="http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#StatementCondensedConsolidatedStatementsOfStockholdersEquity" roleURI="http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#StatementCondensedConsolidatedStatementsOfCashFlows" roleURI="http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureNatureOfBusinessAndOperations" roleURI="http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperations" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureBasisOfPresentation" roleURI="http://www.tactilemedical.com/role/DisclosureBasisOfPresentation" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureSummaryOfSignificantAccountingPolicies" roleURI="http://www.tactilemedical.com/role/DisclosureSummaryOfSignificantAccountingPolicies" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureInventories" roleURI="http://www.tactilemedical.com/role/DisclosureInventories" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureGoodwillAndIntangibleAssets" roleURI="http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssets" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureAccruedExpenses" roleURI="http://www.tactilemedical.com/role/DisclosureAccruedExpenses" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureWarrantyReserves" roleURI="http://www.tactilemedical.com/role/DisclosureWarrantyReserves" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCreditAgreement" roleURI="http://www.tactilemedical.com/role/DisclosureCreditAgreement" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingencies" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingencies" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureStockholdersEquity" roleURI="http://www.tactilemedical.com/role/DisclosureStockholdersEquity" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureRevenue" roleURI="http://www.tactilemedical.com/role/DisclosureRevenue" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureIncomeTaxes" roleURI="http://www.tactilemedical.com/role/DisclosureIncomeTaxes" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureNetIncomeLossPerShare" roleURI="http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShare" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureFairValueMeasurements" roleURI="http://www.tactilemedical.com/role/DisclosureFairValueMeasurements" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureSummaryOfSignificantAccountingPoliciesPolicies" roleURI="http://www.tactilemedical.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureInventoriesTables" roleURI="http://www.tactilemedical.com/role/DisclosureInventoriesTables" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureGoodwillAndIntangibleAssetsTables" roleURI="http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsTables" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureAccruedExpensesTables" roleURI="http://www.tactilemedical.com/role/DisclosureAccruedExpensesTables" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureWarrantyReservesTables" roleURI="http://www.tactilemedical.com/role/DisclosureWarrantyReservesTables" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCreditAgreementTables" roleURI="http://www.tactilemedical.com/role/DisclosureCreditAgreementTables" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingenciesTables" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesTables" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureStockholdersEquityTables" roleURI="http://www.tactilemedical.com/role/DisclosureStockholdersEquityTables" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureRevenueTables" roleURI="http://www.tactilemedical.com/role/DisclosureRevenueTables" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureNetIncomeLossPerSharTables" roleURI="http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerSharTables" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureFairValueMeasurementsTables" roleURI="http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsTables" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureNatureOfBusinessAndOperationsDetails" roleURI="http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureInventoriesDetails" roleURI="http://www.tactilemedical.com/role/DisclosureInventoriesDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureGoodwillAndIntangibleAssetsDetails" roleURI="http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureAccruedExpensesDetails" roleURI="http://www.tactilemedical.com/role/DisclosureAccruedExpensesDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureWarrantyReservesDetails" roleURI="http://www.tactilemedical.com/role/DisclosureWarrantyReservesDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCreditAgreementDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCreditAgreementMaturitiesOfDebtDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingenciesLeaseObligationsDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingenciesLeaseCommitmentsAndOperatingLeaseCostDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseCommitmentsAndOperatingLeaseCostDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingenciesMajorVendorsDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingenciesPurchaseCommitmentsDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesPurchaseCommitmentsDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingenciesRetirementPlanDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesRetirementPlanDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureCommitmentsAndContingenciesLegalProceedingsDetails" roleURI="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureStockholdersEquityStockBasedCompensationDetails" roleURI="http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails" roleURI="http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails" roleURI="http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureRevenueDetails" roleURI="http://www.tactilemedical.com/role/DisclosureRevenueDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureIncomeTaxesDetails" roleURI="http://www.tactilemedical.com/role/DisclosureIncomeTaxesDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureNetIncomeLossPerShareBasicAndDilutedNetIncomeLossPerShareDetails" roleURI="http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareBasicAndDilutedNetIncomeLossPerShareDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails" roleURI="http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureFairValueMeasurementsEarnOutLiabilityDetails" roleURI="http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsEarnOutLiabilityDetails" />
  <link:roleRef xlink:type="simple" xlink:href="tcmd-20240630.xsd#DisclosureFairValueMeasurementsFairValueHierarchyDetails" roleURI="http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsFairValueHierarchyDetails" />
  <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd#InsiderTradingArrangements" roleURI="http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" />
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation" xlink:type="extended" xlink:title="995200090 - Document - Document and Entity Information">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="dei_DocumentType_638584680862064963" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentType_638584680862064963" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport_638584680862064963" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentQuarterlyReport_638584680862064963" order="2" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate_638584680862064963" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentPeriodEndDate_638584680862064963" order="3" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport_638584680862064963" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentTransitionReport_638584680862064963" order="4" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber_638584680862064963" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityFileNumber_638584680862064963" order="5" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName_638584680862064963" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityRegistrantName_638584680862064963" order="6" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode_638584680862064963" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityIncorporationStateCountryCode_638584680862064963" order="7" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber_638584680862064963" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityTaxIdentificationNumber_638584680862064963" order="8" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1_638584680862074960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressAddressLine1_638584680862074960" order="9" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown_638584680862074960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressCityOrTown_638584680862074960" order="10" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince_638584680862074960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressStateOrProvince_638584680862074960" order="11" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode_638584680862074960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressPostalZipCode_638584680862074960" order="12" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode_638584680862074960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_CityAreaCode_638584680862074960" order="13" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber_638584680862074960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_LocalPhoneNumber_638584680862074960" order="14" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle_638584680862074960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_Security12bTitle_638584680862074960" order="15" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol_638584680862074960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_TradingSymbol_638584680862074960" order="16" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName_638584680862084986" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_SecurityExchangeName_638584680862084986" order="17" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus_638584680862084986" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityCurrentReportingStatus_638584680862084986" order="18" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent_638584680862084986" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityInteractiveDataCurrent_638584680862084986" order="19" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory_638584680862084986" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityFilerCategory_638584680862084986" order="20" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness_638584680862084986" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntitySmallBusiness_638584680862084986" order="21" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany_638584680862084986" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityEmergingGrowthCompany_638584680862084986" order="22" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany_638584680862094978" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityShellCompany_638584680862094978" order="23" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding_638584680862094978" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityCommonStockSharesOutstanding_638584680862094978" order="24" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey_638584680862094978" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityCentralIndexKey_638584680862094978" order="25" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate_638584680862094978" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_CurrentFiscalYearEndDate_638584680862094978" order="26" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus_638584680862094978" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentFiscalYearFocus_638584680862094978" order="27" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus_638584680862094978" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentFiscalPeriodFocus_638584680862094978" order="28" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag_638584680862094978" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_AmendmentFlag_638584680862094978" order="29" use="optional" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets" xlink:type="extended" xlink:title="995200100 - Statement - Condensed Consolidated Balance Sheets">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract_638584680862104961" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AssetsAbstract_638584680862104961" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract_638584680862104961" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_638584680862104961" xlink:to="us-gaap_AssetsCurrentAbstract_638584680862104961" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_638584680862104961" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract_638584680862104961" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_638584680862104961" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent_638584680862104961" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract_638584680862104961" xlink:to="us-gaap_AccountsReceivableNetCurrent_638584680862104961" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetInvestmentInLease" xlink:label="us-gaap_NetInvestmentInLease_638584680862104961" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract_638584680862104961" xlink:to="us-gaap_NetInvestmentInLease_638584680862104961" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet_638584680862114960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract_638584680862104961" xlink:to="us-gaap_InventoryNet_638584680862114960" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_638584680862114960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract_638584680862104961" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_638584680862114960" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent_638584680862114960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract_638584680862104961" xlink:to="us-gaap_AssetsCurrent_638584680862114960" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsMiscellaneousAbstract" xlink:label="us-gaap_OtherAssetsMiscellaneousAbstract_638584680862114960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_638584680862104961" xlink:to="us-gaap_OtherAssetsMiscellaneousAbstract_638584680862114960" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_638584680862114960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherAssetsMiscellaneousAbstract_638584680862114960" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_638584680862114960" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="9" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_638584680862114960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherAssetsMiscellaneousAbstract_638584680862114960" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_638584680862114960" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_638584680862114960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherAssetsMiscellaneousAbstract_638584680862114960" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_638584680862114960" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill_638584680862114960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherAssetsMiscellaneousAbstract_638584680862114960" xlink:to="us-gaap_Goodwill_638584680862114960" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_MedicareAccountsReceivableNonCurrent" xlink:label="tcmd_MedicareAccountsReceivableNonCurrent_638584680862114960" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherAssetsMiscellaneousAbstract_638584680862114960" xlink:to="tcmd_MedicareAccountsReceivableNonCurrent_638584680862114960" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet_638584680862124958" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherAssetsMiscellaneousAbstract_638584680862114960" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet_638584680862124958" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent_638584680862124958" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherAssetsMiscellaneousAbstract_638584680862114960" xlink:to="us-gaap_OtherAssetsNoncurrent_638584680862124958" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsNoncurrent" xlink:label="us-gaap_AssetsNoncurrent_638584680862124958" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherAssetsMiscellaneousAbstract_638584680862114960" xlink:to="us-gaap_AssetsNoncurrent_638584680862124958" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets_638584680862124958" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_638584680862104961" xlink:to="us-gaap_Assets_638584680862124958" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_638584680862124958" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract_638584680862124958" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract_638584680862124958" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract_638584680862124958" xlink:to="us-gaap_LiabilitiesCurrentAbstract_638584680862124958" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent_638584680862124958" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_638584680862124958" xlink:to="us-gaap_AccountsPayableCurrent_638584680862124958" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NotesPayableCurrent" xlink:label="us-gaap_NotesPayableCurrent_638584680862124958" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_638584680862124958" xlink:to="us-gaap_NotesPayableCurrent_638584680862124958" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent_638584680862134958" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_638584680862124958" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent_638584680862134958" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent_638584680862134958" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_638584680862124958" xlink:to="us-gaap_AccruedLiabilitiesCurrent_638584680862134958" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="us-gaap_AccruedIncomeTaxesCurrent_638584680862134958" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_638584680862124958" xlink:to="us-gaap_AccruedIncomeTaxesCurrent_638584680862134958" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_638584680862134958" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_638584680862124958" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_638584680862134958" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesCurrent" xlink:label="us-gaap_OtherLiabilitiesCurrent_638584680862134958" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_638584680862124958" xlink:to="us-gaap_OtherLiabilitiesCurrent_638584680862134958" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent_638584680862134958" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_638584680862124958" xlink:to="us-gaap_LiabilitiesCurrent_638584680862134958" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesNoncurrentAbstract" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract_638584680862144968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract_638584680862124958" xlink:to="us-gaap_LiabilitiesNoncurrentAbstract_638584680862144968" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermNotesPayable" xlink:label="us-gaap_LongTermNotesPayable_638584680862144968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract_638584680862144968" xlink:to="us-gaap_LongTermNotesPayable_638584680862144968" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrualNoncurrent" xlink:label="us-gaap_ProductWarrantyAccrualNoncurrent_638584680862144968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract_638584680862144968" xlink:to="us-gaap_ProductWarrantyAccrualNoncurrent_638584680862144968" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedIncomeTaxesNoncurrent" xlink:label="us-gaap_AccruedIncomeTaxesNoncurrent_638584680862144968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract_638584680862144968" xlink:to="us-gaap_AccruedIncomeTaxesNoncurrent_638584680862144968" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_638584680862144968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract_638584680862144968" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_638584680862144968" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="us-gaap_LiabilitiesNoncurrent_638584680862144968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract_638584680862144968" xlink:to="us-gaap_LiabilitiesNoncurrent_638584680862144968" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities_638584680862154967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract_638584680862144968" xlink:to="us-gaap_Liabilities_638584680862154967" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies_638584680862154967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract_638584680862124958" xlink:to="us-gaap_CommitmentsAndContingencies_638584680862154967" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract_638584680862154967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract_638584680862124958" xlink:to="us-gaap_StockholdersEquityAbstract_638584680862154967" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue_638584680862154967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract_638584680862154967" xlink:to="us-gaap_PreferredStockValue_638584680862154967" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="9" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue_638584680862154967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract_638584680862154967" xlink:to="us-gaap_CommonStockValue_638584680862154967" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital_638584680862154967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract_638584680862154967" xlink:to="us-gaap_AdditionalPaidInCapital_638584680862154967" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_638584680862164993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract_638584680862154967" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit_638584680862164993" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity_638584680862164993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract_638584680862154967" xlink:to="us-gaap_StockholdersEquity_638584680862164993" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_638584680862164993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract_638584680862154967" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_638584680862164993" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" xlink:type="extended" xlink:title="995200105 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare_638584680862174967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare_638584680862174967" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized_638584680862174967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PreferredStockSharesAuthorized_638584680862174967" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued_638584680862174967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PreferredStockSharesIssued_638584680862174967" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding_638584680862174967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PreferredStockSharesOutstanding_638584680862174967" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare_638584680862174967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare_638584680862174967" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized_638584680862174967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesAuthorized_638584680862174967" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued_638584680862174967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesIssued_638584680862174967" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding_638584680862174967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesOutstanding_638584680862174967" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations" xlink:type="extended" xlink:title="995200200 - Statement - Condensed Consolidated Statements of Operations">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_638584680862184996" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_StatementTable_638584680862184996" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis_638584680862184996" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_638584680862184996" xlink:to="srt_ProductOrServiceAxis_638584680862184996" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain_638584680862184996" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis_638584680862184996" xlink:to="srt_ProductsAndServicesDomain_638584680862184996" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductMember" xlink:label="us-gaap_ProductMember_638584680862184996" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain_638584680862184996" xlink:to="us-gaap_ProductMember_638584680862184996" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_RentalProductServiceMember" xlink:label="tcmd_RentalProductServiceMember_638584680862184996" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain_638584680862184996" xlink:to="tcmd_RentalProductServiceMember_638584680862184996" order="2" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_638584680862184996" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_638584680862184996" xlink:to="us-gaap_StatementLineItems_638584680862184996" order="2" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_638584680862184996" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_638584680862184996" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_638584680862184996" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfRevenue" xlink:label="us-gaap_CostOfRevenue_638584680862184996" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_638584680862184996" xlink:to="us-gaap_CostOfRevenue_638584680862184996" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit_638584680862184996" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_638584680862184996" xlink:to="us-gaap_GrossProfit_638584680862184996" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="us-gaap_OperatingExpensesAbstract_638584680862195024" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_638584680862184996" xlink:to="us-gaap_OperatingExpensesAbstract_638584680862195024" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="us-gaap_SellingAndMarketingExpense_638584680862195024" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract_638584680862195024" xlink:to="us-gaap_SellingAndMarketingExpense_638584680862195024" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense_638584680862195024" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract_638584680862195024" xlink:to="us-gaap_ResearchAndDevelopmentExpense_638584680862195024" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense_638584680862195024" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract_638584680862195024" xlink:to="us-gaap_GeneralAndAdministrativeExpense_638584680862195024" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AmortizationOfIntangibleAssetsAndEarnOuts" xlink:label="tcmd_AmortizationOfIntangibleAssetsAndEarnOuts_638584680862195024" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract_638584680862195024" xlink:to="tcmd_AmortizationOfIntangibleAssetsAndEarnOuts_638584680862195024" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses_638584680862195024" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract_638584680862195024" xlink:to="us-gaap_OperatingExpenses_638584680862195024" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss_638584680862195024" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_638584680862184996" xlink:to="us-gaap_OperatingIncomeLoss_638584680862195024" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense_638584680862195024" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_638584680862184996" xlink:to="us-gaap_NonoperatingIncomeExpense_638584680862195024" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_638584680862195024" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_638584680862184996" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_638584680862195024" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit_638584680862204972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_638584680862184996" xlink:to="us-gaap_IncomeTaxExpenseBenefit_638584680862204972" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss_638584680862284998" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_638584680862184996" xlink:to="us-gaap_NetIncomeLoss_638584680862284998" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract_638584680862284998" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_638584680862184996" xlink:to="us-gaap_EarningsPerShareAbstract_638584680862284998" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_638584680862284998" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract_638584680862284998" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_638584680862284998" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_638584680862294969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract_638584680862284998" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_638584680862294969" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_EarningsPerShareOtherDisclosureAbstract" xlink:label="tcmd_EarningsPerShareOtherDisclosureAbstract_638584680862294969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_638584680862184996" xlink:to="tcmd_EarningsPerShareOtherDisclosureAbstract_638584680862294969" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_638584680862294969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="tcmd_EarningsPerShareOtherDisclosureAbstract_638584680862294969" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_638584680862294969" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_638584680862294969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="tcmd_EarningsPerShareOtherDisclosureAbstract_638584680862294969" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_638584680862294969" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" xlink:type="extended" xlink:title="995200300 - Statement - Condensed Consolidated Statements of Stockholders' Equity">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_638584680862304966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementTable_638584680862304966" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis_638584680862304966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_638584680862304966" xlink:to="us-gaap_StatementEquityComponentsAxis_638584680862304966" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember_638584680862304966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis_638584680862304966" xlink:to="us-gaap_CommonStockMember_638584680862304966" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember_638584680862304966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis_638584680862304966" xlink:to="us-gaap_AdditionalPaidInCapitalMember_638584680862304966" order="2" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember_638584680862304966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis_638584680862304966" xlink:to="us-gaap_RetainedEarningsMember_638584680862304966" order="3" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain_638584680862304966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis_638584680862304966" xlink:to="us-gaap_EquityComponentDomain_638584680862304966" order="4" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_638584680862304966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_638584680862304966" xlink:to="us-gaap_StatementLineItems_638584680862304966" order="2" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_638584680862304966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_638584680862304966" xlink:to="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_638584680862304966" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity_638584680862304966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_638584680862304966" xlink:to="us-gaap_StockholdersEquity_638584680862304966" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding_638584680862304966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_638584680862304966" xlink:to="us-gaap_SharesOutstanding_638584680862304966" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_638584680862304966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_638584680862304966" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_638584680862304966" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_638584680862314969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_638584680862304966" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_638584680862314969" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_638584680862314969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_638584680862304966" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_638584680862314969" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:label="us-gaap_StockIssuedDuringPeriodValueNewIssues_638584680862314969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_638584680862304966" xlink:to="us-gaap_StockIssuedDuringPeriodValueNewIssues_638584680862314969" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="us-gaap_StockIssuedDuringPeriodSharesNewIssues_638584680862314969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_638584680862304966" xlink:to="us-gaap_StockIssuedDuringPeriodSharesNewIssues_638584680862314969" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:label="us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_638584680862314969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_638584680862304966" xlink:to="us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_638584680862314969" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_638584680862314969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_638584680862304966" xlink:to="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_638584680862314969" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss_638584680862314969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_638584680862304966" xlink:to="us-gaap_NetIncomeLoss_638584680862314969" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity_638584680862314969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_638584680862304966" xlink:to="us-gaap_StockholdersEquity_638584680862314969" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding_638584680862324970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_638584680862304966" xlink:to="us-gaap_SharesOutstanding_638584680862324970" order="12" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="5" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" xlink:type="extended" xlink:title="995200400 - Statement - Condensed Consolidated Statements of Cash Flows">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInContinuingOperationsAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInContinuingOperationsAbstract_638584680862324970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInContinuingOperationsAbstract_638584680862324970" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss_638584680862324970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInContinuingOperationsAbstract_638584680862324970" xlink:to="us-gaap_ProfitLoss_638584680862324970" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_638584680862324970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInContinuingOperationsAbstract_638584680862324970" xlink:to="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_638584680862324970" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization_638584680862324970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_638584680862324970" xlink:to="us-gaap_DepreciationDepletionAndAmortization_638584680862324970" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCredits_638584680862324970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_638584680862324970" xlink:to="us-gaap_DeferredIncomeTaxesAndTaxCredits_638584680862324970" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation_638584680862334968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_638584680862324970" xlink:to="us-gaap_ShareBasedCompensation_638584680862334968" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_638584680862334968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_638584680862324970" xlink:to="us-gaap_GainLossOnDispositionOfAssets1_638584680862334968" order="4" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesFairValueAdjustment" xlink:label="us-gaap_LiabilitiesFairValueAdjustment_638584680862334968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_638584680862324970" xlink:to="us-gaap_LiabilitiesFairValueAdjustment_638584680862334968" order="5" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_638584680862334968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_638584680862324970" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_638584680862334968" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_638584680862334968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_638584680862334968" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_638584680862334968" order="1" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_IncreaseDecreaseInNetInvestmentInLease" xlink:label="tcmd_IncreaseDecreaseInNetInvestmentInLease_638584680862334968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_638584680862334968" xlink:to="tcmd_IncreaseDecreaseInNetInvestmentInLease_638584680862334968" order="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories_638584680862334968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_638584680862334968" xlink:to="us-gaap_IncreaseDecreaseInInventories_638584680862334968" order="3" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_638584680862334968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_638584680862334968" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_638584680862334968" order="4" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_638584680862334968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_638584680862334968" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_638584680862334968" order="5" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset" xlink:label="tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset_638584680862344970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_638584680862334968" xlink:to="tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset_638584680862344970" order="6" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerAsset_638584680862344970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_638584680862334968" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerAsset_638584680862344970" order="7" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_638584680862344970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_638584680862334968" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable_638584680862344970" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities_638584680862344970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_638584680862334968" xlink:to="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities_638584680862344970" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable" xlink:label="tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable_638584680862344970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_638584680862334968" xlink:to="tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable_638584680862344970" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680862344970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInContinuingOperationsAbstract_638584680862324970" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_638584680862344970" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_638584680862344970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_638584680862344970" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_638584680862344970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_638584680862344970" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_638584680862344970" order="1" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_638584680862354992" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_638584680862344970" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_638584680862354992" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets_638584680862354992" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_638584680862344970" xlink:to="us-gaap_PaymentsToAcquireIntangibleAssets_638584680862354992" order="3" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_638584680862354992" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_638584680862344970" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_638584680862354992" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_638584680862354992" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_638584680862354992" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_638584680862354992" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_638584680862354992" xlink:to="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_638584680862354992" order="1" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfNotesPayable" xlink:label="us-gaap_RepaymentsOfNotesPayable_638584680862354992" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_638584680862354992" xlink:to="us-gaap_RepaymentsOfNotesPayable_638584680862354992" order="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised_638584680862364971" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_638584680862354992" xlink:to="us-gaap_ProceedsFromStockOptionsExercised_638584680862364971" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans" xlink:label="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans_638584680862364971" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_638584680862354992" xlink:to="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans_638584680862364971" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="us-gaap_ProceedsFromIssuanceOfCommonStock_638584680862364971" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_638584680862354992" xlink:to="us-gaap_ProceedsFromIssuanceOfCommonStock_638584680862364971" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_638584680862364971" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_638584680862354992" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_638584680862364971" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_638584680862364971" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_638584680862364971" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_638584680862364971" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_638584680862364971" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_638584680862374973" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_638584680862374973" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract_638584680862374973" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract_638584680862374973" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet_638584680862374973" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract_638584680862374973" xlink:to="us-gaap_InterestPaidNet_638584680862374973" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesPaid" xlink:label="us-gaap_IncomeTaxesPaid_638584680862374973" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract_638584680862374973" xlink:to="us-gaap_IncomeTaxesPaid_638584680862374973" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1" xlink:label="us-gaap_NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1_638584680862374973" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract_638584680862374973" xlink:to="us-gaap_NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1_638584680862374973" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="7" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperations" xlink:type="extended" xlink:title="995210101 - Disclosure - Nature of Business and Operations">
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_NatureOfBusinessAndOperationAbstract" xlink:label="tcmd_NatureOfBusinessAndOperationAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NatureOfOperations" xlink:label="us-gaap_NatureOfOperations_638584680862385026" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="tcmd_NatureOfBusinessAndOperationAbstract" xlink:to="us-gaap_NatureOfOperations_638584680862385026" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureBasisOfPresentation" xlink:type="extended" xlink:title="995210201 - Disclosure - Basis of Presentation">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_638584680862385026" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_638584680862385026" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureSummaryOfSignificantAccountingPolicies" xlink:type="extended" xlink:title="995210301 - Disclosure - Summary of Significant Accounting Policies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock_638584680862385026" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock_638584680862385026" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureInventories" xlink:type="extended" xlink:title="995210401 - Disclosure - Inventories">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="us-gaap_InventoryDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock_638584680862394974" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_InventoryDisclosureTextBlock_638584680862394974" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssets" xlink:type="extended" xlink:title="995210501 - Disclosure - Goodwill and Intangible Assets">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_638584680862394974" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_638584680862394974" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureAccruedExpenses" xlink:type="extended" xlink:title="995210601 - Disclosure - Accrued Expenses">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:label="us-gaap_AccruedLiabilitiesCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AccruedExpensesDisclosureCurrentTextBlock" xlink:label="tcmd_AccruedExpensesDisclosureCurrentTextBlock_638584680862394974" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="tcmd_AccruedExpensesDisclosureCurrentTextBlock_638584680862394974" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureWarrantyReserves" xlink:type="extended" xlink:title="995210701 - Disclosure - Warranty Reserves">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyDisclosureAbstract" xlink:label="us-gaap_StandardProductWarrantyDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyDisclosureTextBlock" xlink:label="us-gaap_ProductWarrantyDisclosureTextBlock_638584680862404969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StandardProductWarrantyDisclosureAbstract" xlink:to="us-gaap_ProductWarrantyDisclosureTextBlock_638584680862404969" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCreditAgreement" xlink:type="extended" xlink:title="995210801 - Disclosure - Credit Agreement">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="us-gaap_DebtDisclosureTextBlock_638584680862404969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureTextBlock_638584680862404969" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="3" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingencies" xlink:type="extended" xlink:title="995210901 - Disclosure - Commitments and Contingencies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_638584680862404969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_638584680862404969" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureStockholdersEquity" xlink:type="extended" xlink:title="995211001 - Disclosure - Stockholders' Equity">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityNoteAbstract" xlink:label="us-gaap_StockholdersEquityNoteAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:label="us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock_638584680862415011" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock_638584680862415011" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureRevenue" xlink:type="extended" xlink:title="995211101 - Disclosure - Revenue">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_638584680862415011" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_638584680862415011" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureIncomeTaxes" xlink:type="extended" xlink:title="995211201 - Disclosure - Income Taxes">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_638584680862415011" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_638584680862415011" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShare" xlink:type="extended" xlink:title="995211301 - Disclosure - Net Income (Loss) Per Share">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock_638584680862415011" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareTextBlock_638584680862415011" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureFairValueMeasurements" xlink:type="extended" xlink:title="995211401 - Disclosure - Fair Value Measurements">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="us-gaap_FairValueDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="us-gaap_FairValueDisclosuresTextBlock_638584680862424971" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueDisclosuresAbstract" xlink:to="us-gaap_FairValueDisclosuresTextBlock_638584680862424971" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" xlink:type="extended" xlink:title="99920302 - Disclosure - Summary of Significant Accounting Policies (Policies)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_638584680862424971" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract_1" xlink:to="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_638584680862424971" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="us-gaap_ConsolidationPolicyTextBlock_638584680862424971" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract_1" xlink:to="us-gaap_ConsolidationPolicyTextBlock_638584680862424971" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UseOfEstimates" xlink:label="us-gaap_UseOfEstimates_638584680862424971" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract_1" xlink:to="us-gaap_UseOfEstimates_638584680862424971" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock" xlink:label="tcmd_NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock_638584680862424971" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract_1" xlink:to="tcmd_NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock_638584680862424971" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureInventoriesTables" xlink:type="extended" xlink:title="99930403 - Disclosure - Inventories (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="us-gaap_InventoryDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_638584680862434970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_638584680862434970" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="5" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsTables" xlink:type="extended" xlink:title="99930503 - Disclosure - Goodwill and Intangible Assets (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_638584680862434970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_638584680862434970" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_638584680862434970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_638584680862434970" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureAccruedExpensesTables" xlink:type="extended" xlink:title="99930603 - Disclosure - Accrued Expenses (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:label="us-gaap_AccruedLiabilitiesCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ScheduleOfAccruedExpensesTableTextBlock" xlink:label="tcmd_ScheduleOfAccruedExpensesTableTextBlock_638584680862434970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="tcmd_ScheduleOfAccruedExpensesTableTextBlock_638584680862434970" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureWarrantyReservesTables" xlink:type="extended" xlink:title="99930703 - Disclosure - Warranty Reserves (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyDisclosureAbstract" xlink:label="us-gaap_StandardProductWarrantyDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_638584680862444970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StandardProductWarrantyDisclosureAbstract" xlink:to="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_638584680862444970" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="5" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCreditAgreementTables" xlink:type="extended" xlink:title="99930803 - Disclosure - Credit Agreement (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_638584680862444970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract_1" xlink:to="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_638584680862444970" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesTables" xlink:type="extended" xlink:title="99930903 - Disclosure - Commitments and Contingencies (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:label="tcmd_AssetsAndLiabilitiesLesseeTableTextBlock_638584680862444970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="tcmd_AssetsAndLiabilitiesLesseeTableTextBlock_638584680862444970" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLeaseIncomeTableTextBlock" xlink:label="us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_638584680862444970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_OperatingLeaseLeaseIncomeTableTextBlock_638584680862444970" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureStockholdersEquityTables" xlink:type="extended" xlink:title="99931003 - Disclosure - Stockholders' Equity (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityNoteAbstract" xlink:label="us-gaap_StockholdersEquityNoteAbstract_636068659397303643" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_638584680862454972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityNoteAbstract_636068659397303643" xlink:to="us-gaap_StatementTable_638584680862454972" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis_638584680862454972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_638584680862454972" xlink:to="us-gaap_AwardTypeAxis_638584680862454972" order="1" use="optional" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_638584680862454972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis_638584680862454972" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_638584680862454972" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember_638584680862454972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_638584680862454972" xlink:to="us-gaap_RestrictedStockUnitsRSUMember_638584680862454972" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TimeBasedRestrictedStockUnitsRsusMember" xlink:label="tcmd_TimeBasedRestrictedStockUnitsRsusMember_638584680862454972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestrictedStockUnitsRSUMember_638584680862454972" xlink:to="tcmd_TimeBasedRestrictedStockUnitsRsusMember_638584680862454972" order="1" use="optional" priority="3" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember" xlink:label="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_638584680862454972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestrictedStockUnitsRSUMember_638584680862454972" xlink:to="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_638584680862454972" order="2" use="optional" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_638584680862454972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_638584680862454972" xlink:to="us-gaap_StatementLineItems_638584680862454972" order="2" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_638584680862454972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_638584680862454972" xlink:to="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_638584680862454972" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_638584680862454972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_638584680862454972" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_638584680862454972" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_638584680862464970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_638584680862454972" xlink:to="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_638584680862464970" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureRevenueTables" xlink:type="extended" xlink:title="99931103 - Disclosure - Revenue (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock_638584680862464970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock_638584680862464970" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ScheduleOfRevenueFromThirdPartyPayersTableTextBlock" xlink:label="tcmd_ScheduleOfRevenueFromThirdPartyPayersTableTextBlock_638584680862464970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="tcmd_ScheduleOfRevenueFromThirdPartyPayersTableTextBlock_638584680862464970" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesTypeLeaseLeaseIncomeTableTextBlock" xlink:label="us-gaap_SalesTypeLeaseLeaseIncomeTableTextBlock_638584680862464970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_SalesTypeLeaseLeaseIncomeTableTextBlock_638584680862464970" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerSharTables" xlink:type="extended" xlink:title="99931303 - Disclosure - Net Income (Loss) Per Shar (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_638584680862464970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_638584680862464970" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_638584680862474970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_638584680862474970" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsTables" xlink:type="extended" xlink:title="99931403 - Disclosure - Fair Value Measurements (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="us-gaap_FairValueDisclosuresAbstract_636232962865744867" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:label="us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_638584680862474970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueDisclosuresAbstract_636232962865744867" xlink:to="us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_638584680862474970" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails" xlink:type="extended" xlink:title="99940101 - Disclosure - Nature of Business and Operations (Details)">
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_NatureOfBusinessAndOperationAbstract" xlink:label="tcmd_NatureOfBusinessAndOperationAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfSubsidiaryOrEquityMethodInvesteeTable" xlink:label="us-gaap_ScheduleOfSubsidiaryOrEquityMethodInvesteeTable_638584680862474970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="tcmd_NatureOfBusinessAndOperationAbstract" xlink:to="us-gaap_ScheduleOfSubsidiaryOrEquityMethodInvesteeTable_638584680862474970" order="1" use="optional" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsidiarySaleOfStockAxis" xlink:label="us-gaap_SubsidiarySaleOfStockAxis_638584680862474970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSubsidiaryOrEquityMethodInvesteeTable_638584680862474970" xlink:to="us-gaap_SubsidiarySaleOfStockAxis_638584680862474970" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="us-gaap_SaleOfStockNameOfTransactionDomain_638584680862474970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsidiarySaleOfStockAxis_638584680862474970" xlink:to="us-gaap_SaleOfStockNameOfTransactionDomain_638584680862474970" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IPOMember" xlink:label="us-gaap_IPOMember_638584680862484985" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SaleOfStockNameOfTransactionDomain_638584680862474970" xlink:to="us-gaap_IPOMember_638584680862484985" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_FollowOnPublicOfferingMember" xlink:label="tcmd_FollowOnPublicOfferingMember_638584680862484985" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SaleOfStockNameOfTransactionDomain_638584680862474970" xlink:to="tcmd_FollowOnPublicOfferingMember_638584680862484985" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsidiarySaleOfStockLineItems" xlink:label="us-gaap_SubsidiarySaleOfStockLineItems_638584680862484985" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSubsidiaryOrEquityMethodInvesteeTable_638584680862474970" xlink:to="us-gaap_SubsidiarySaleOfStockLineItems_638584680862484985" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="us-gaap_StockIssuedDuringPeriodSharesNewIssues_638584680862484985" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsidiarySaleOfStockLineItems_638584680862484985" xlink:to="us-gaap_StockIssuedDuringPeriodSharesNewIssues_638584680862484985" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesIssuedPricePerShare" xlink:label="us-gaap_SharesIssuedPricePerShare_638584680862484985" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsidiarySaleOfStockLineItems_638584680862484985" xlink:to="us-gaap_SharesIssuedPricePerShare_638584680862484985" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharePrice" xlink:label="us-gaap_SharePrice_638584680862484985" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsidiarySaleOfStockLineItems_638584680862484985" xlink:to="us-gaap_SharePrice_638584680862484985" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceInitialPublicOffering" xlink:label="us-gaap_ProceedsFromIssuanceInitialPublicOffering_638584680862484985" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsidiarySaleOfStockLineItems_638584680862484985" xlink:to="us-gaap_ProceedsFromIssuanceInitialPublicOffering_638584680862484985" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ExpenseRelatingToInitialPublicOffering" xlink:label="tcmd_ExpenseRelatingToInitialPublicOffering_638584680862484985" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsidiarySaleOfStockLineItems_638584680862484985" xlink:to="tcmd_ExpenseRelatingToInitialPublicOffering_638584680862484985" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="us-gaap_ProceedsFromIssuanceOfCommonStock_638584680862484985" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsidiarySaleOfStockLineItems_638584680862484985" xlink:to="us-gaap_ProceedsFromIssuanceOfCommonStock_638584680862484985" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureInventoriesDetails" xlink:type="extended" xlink:title="99940401 - Disclosure - Inventories (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="us-gaap_InventoryDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNetAbstract" xlink:label="us-gaap_InventoryNetAbstract_638584680862494968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_InventoryNetAbstract_638584680862494968" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryFinishedGoods" xlink:label="us-gaap_InventoryFinishedGoods_638584680862494968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryNetAbstract_638584680862494968" xlink:to="us-gaap_InventoryFinishedGoods_638584680862494968" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryWorkInProcess" xlink:label="us-gaap_InventoryWorkInProcess_638584680862494968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryNetAbstract_638584680862494968" xlink:to="us-gaap_InventoryWorkInProcess_638584680862494968" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet_638584680862494968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryNetAbstract_638584680862494968" xlink:to="us-gaap_InventoryNet_638584680862494968" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="8" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails" xlink:type="extended" xlink:title="99940501 - Disclosure - Goodwill And Intangible Assets (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_638584680862494968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_638584680862494968" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis_638584680862494968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_638584680862494968" xlink:to="us-gaap_BusinessAcquisitionAxis_638584680862494968" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain_638584680862494968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis_638584680862494968" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain_638584680862494968" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AfflovestPMember" xlink:label="tcmd_AfflovestPMember_638584680862504966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain_638584680862494968" xlink:to="tcmd_AfflovestPMember_638584680862504966" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis_638584680862504966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_638584680862494968" xlink:to="us-gaap_IncomeStatementLocationAxis_638584680862504966" order="2" use="optional" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain_638584680862504966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationAxis_638584680862504966" xlink:to="us-gaap_IncomeStatementLocationDomain_638584680862504966" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember_638584680862504966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationDomain_638584680862504966" xlink:to="us-gaap_CostOfSalesMember_638584680862504966" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_638584680862504966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_638584680862494968" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_638584680862504966" order="3" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_638584680862504966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_638584680862504966" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_638584680862504966" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PatentsMember" xlink:label="us-gaap_PatentsMember_638584680862504966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_638584680862504966" xlink:to="us-gaap_PatentsMember_638584680862504966" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DefensiveIntangibleAssetsMember" xlink:label="tcmd_DefensiveIntangibleAssetsMember_638584680862504966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_638584680862504966" xlink:to="tcmd_DefensiveIntangibleAssetsMember_638584680862504966" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerContractsMember" xlink:label="us-gaap_CustomerContractsMember_638584680862504966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_638584680862504966" xlink:to="us-gaap_CustomerContractsMember_638584680862504966" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember_638584680862514968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_638584680862504966" xlink:to="us-gaap_CustomerRelationshipsMember_638584680862514968" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="us-gaap_DevelopedTechnologyRightsMember_638584680862514968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_638584680862504966" xlink:to="us-gaap_DevelopedTechnologyRightsMember_638584680862514968" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_638584680862514968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_638584680862494968" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_638584680862514968" order="4" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_638584680862514968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_638584680862514968" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_638584680862514968" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TradeNamesMember" xlink:label="us-gaap_TradeNamesMember_638584680862514968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_638584680862514968" xlink:to="us-gaap_TradeNamesMember_638584680862514968" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PatentsMember" xlink:label="us-gaap_PatentsMember_638584680862514968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_638584680862514968" xlink:to="us-gaap_PatentsMember_638584680862514968" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems_638584680862514968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_638584680862494968" xlink:to="us-gaap_FiniteLivedIntangibleAssetsLineItems_638584680862514968" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill_638584680862514968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems_638584680862514968" xlink:to="us-gaap_Goodwill_638584680862514968" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetImpairmentCharges" xlink:label="us-gaap_AssetImpairmentCharges_638584680862524968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems_638584680862514968" xlink:to="us-gaap_AssetImpairmentCharges_638584680862524968" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNetAbstract_638584680862524968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems_638584680862514968" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNetAbstract_638584680862524968" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" xlink:label="us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_638584680862524968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNetAbstract_638584680862524968" xlink:to="us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_638584680862524968" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross_638584680862524968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNetAbstract_638584680862524968" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross_638584680862524968" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_638584680862524968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNetAbstract_638584680862524968" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_638584680862524968" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_638584680862524968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNetAbstract_638584680862524968" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_638584680862524968" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract_638584680862524968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems_638584680862514968" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract_638584680862524968" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_638584680862534965" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract_638584680862524968" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_638584680862534965" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill_638584680862534965" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems_638584680862514968" xlink:to="us-gaap_IntangibleAssetsGrossExcludingGoodwill_638584680862534965" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_638584680862534965" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems_638584680862514968" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_638584680862534965" order="6" use="optional" preferredLabel="http://www.xbrl.org/2009/role/netLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets_638584680862534965" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems_638584680862514968" xlink:to="us-gaap_AmortizationOfIntangibleAssets_638584680862534965" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:label="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_638584680862534965" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems_638584680862514968" xlink:to="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_638584680862534965" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_638584680862534965" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_638584680862534965" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_638584680862534965" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_638584680862544970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_638584680862534965" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_638584680862544970" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_638584680862544970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_638584680862534965" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_638584680862544970" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_638584680862544970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_638584680862534965" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_638584680862544970" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_638584680862544970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_638584680862534965" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_638584680862544970" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" xlink:label="tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_638584680862544970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_638584680862534965" xlink:to="tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_638584680862544970" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_638584680862544970" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_638584680862534965" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_638584680862544970" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureAccruedExpensesDetails" xlink:type="extended" xlink:title="99940601 - Disclosure - Accrued Expenses (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:label="us-gaap_AccruedLiabilitiesCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:label="us-gaap_ProductWarrantyAccrualClassifiedCurrent_638584680862554964" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="us-gaap_ProductWarrantyAccrualClassifiedCurrent_638584680862554964" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedProfessionalFeesCurrent" xlink:label="us-gaap_AccruedProfessionalFeesCurrent_638584680862554964" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedProfessionalFeesCurrent_638584680862554964" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_InTransitInventoryAccruedExpense" xlink:label="tcmd_InTransitInventoryAccruedExpense_638584680862554964" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="tcmd_InTransitInventoryAccruedExpense_638584680862554964" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AccruedTravelAndEntertainmentCurrent" xlink:label="tcmd_AccruedTravelAndEntertainmentCurrent_638584680862554964" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="tcmd_AccruedTravelAndEntertainmentCurrent_638584680862554964" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AccruedClinicalStudiesExpensesCurrent" xlink:label="tcmd_AccruedClinicalStudiesExpensesCurrent_638584680862554964" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="tcmd_AccruedClinicalStudiesExpensesCurrent_638584680862554964" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AccruedSalesAndUseTax" xlink:label="tcmd_AccruedSalesAndUseTax_638584680862554964" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="tcmd_AccruedSalesAndUseTax_638584680862554964" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent_638584680862564966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent_638584680862564966" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent_638584680862564966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedLiabilitiesCurrent_638584680862564966" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureWarrantyReservesDetails" xlink:type="extended" xlink:title="99940701 - Disclosure - Warranty Reserves (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyDisclosureAbstract" xlink:label="us-gaap_StandardProductWarrantyDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MovementInStandardProductWarrantyAccrualRollForward" xlink:label="us-gaap_MovementInStandardProductWarrantyAccrualRollForward_638584680862564966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StandardProductWarrantyDisclosureAbstract" xlink:to="us-gaap_MovementInStandardProductWarrantyAccrualRollForward_638584680862564966" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="us-gaap_StandardProductWarrantyAccrual_638584680862564966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MovementInStandardProductWarrantyAccrualRollForward_638584680862564966" xlink:to="us-gaap_StandardProductWarrantyAccrual_638584680862564966" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:label="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_638584680862564966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MovementInStandardProductWarrantyAccrualRollForward_638584680862564966" xlink:to="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_638584680862564966" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrualPayments" xlink:label="us-gaap_StandardProductWarrantyAccrualPayments_638584680862564966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MovementInStandardProductWarrantyAccrualRollForward_638584680862564966" xlink:to="us-gaap_StandardProductWarrantyAccrualPayments_638584680862564966" order="3" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="us-gaap_StandardProductWarrantyAccrual_6385846808625649661" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MovementInStandardProductWarrantyAccrualRollForward_638584680862564966" xlink:to="us-gaap_StandardProductWarrantyAccrual_6385846808625649661" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:label="us-gaap_ProductWarrantyAccrualClassifiedCurrent_638584680862564966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MovementInStandardProductWarrantyAccrualRollForward_638584680862564966" xlink:to="us-gaap_ProductWarrantyAccrualClassifiedCurrent_638584680862564966" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrualNoncurrent" xlink:label="us-gaap_ProductWarrantyAccrualNoncurrent_638584680862575072" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MovementInStandardProductWarrantyAccrualRollForward_638584680862564966" xlink:to="us-gaap_ProductWarrantyAccrualNoncurrent_638584680862575072" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrual" xlink:label="us-gaap_ProductWarrantyAccrual_638584680862575072" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MovementInStandardProductWarrantyAccrualRollForward_638584680862564966" xlink:to="us-gaap_ProductWarrantyAccrual_638584680862575072" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails" xlink:type="extended" xlink:title="99940801 - Disclosure - Credit Agreement (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="us-gaap_LineOfCreditFacilityTable_638584680862575072" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_LineOfCreditFacilityTable_638584680862575072" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis_638584680862575072" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable_638584680862575072" xlink:to="us-gaap_CreditFacilityAxis_638584680862575072" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain_638584680862575072" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis_638584680862575072" xlink:to="us-gaap_CreditFacilityDomain_638584680862575072" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="us-gaap_RevolvingCreditFacilityMember_638584680862575072" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityDomain_638584680862575072" xlink:to="us-gaap_RevolvingCreditFacilityMember_638584680862575072" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TermLoanMember" xlink:label="tcmd_TermLoanMember_638584680862584983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityDomain_638584680862575072" xlink:to="tcmd_TermLoanMember_638584680862584983" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis_638584680862584983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable_638584680862575072" xlink:to="srt_RangeAxis_638584680862584983" order="2" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember_638584680862584983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis_638584680862584983" xlink:to="srt_RangeMember_638584680862584983" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember_638584680862584983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_638584680862584983" xlink:to="srt_MaximumMember_638584680862584983" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember_638584680862584983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_638584680862584983" xlink:to="srt_MinimumMember_638584680862584983" order="2" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis_638584680862584983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable_638584680862575072" xlink:to="us-gaap_VariableRateAxis_638584680862584983" order="3" use="optional" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain_638584680862584983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis_638584680862584983" xlink:to="us-gaap_VariableRateDomain_638584680862584983" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FederalFundsEffectiveSwapRateMember" xlink:label="us-gaap_FederalFundsEffectiveSwapRateMember_638584680862584983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateDomain_638584680862584983" xlink:to="us-gaap_FederalFundsEffectiveSwapRateMember_638584680862584983" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BaseRateMember" xlink:label="us-gaap_BaseRateMember_638584680862584983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateDomain_638584680862584983" xlink:to="us-gaap_BaseRateMember_638584680862584983" order="2" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SecuredOvernightFinancingRateSofrMember" xlink:label="us-gaap_SecuredOvernightFinancingRateSofrMember_638584680862584983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateDomain_638584680862584983" xlink:to="us-gaap_SecuredOvernightFinancingRateSofrMember_638584680862584983" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="us-gaap_LineOfCreditFacilityLineItems_638584680862594994" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable_638584680862575072" xlink:to="us-gaap_LineOfCreditFacilityLineItems_638584680862594994" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="us-gaap_DebtInstrumentFaceAmount_638584680862594994" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems_638584680862594994" xlink:to="us-gaap_DebtInstrumentFaceAmount_638584680862594994" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_638584680862594994" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems_638584680862594994" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_638584680862594994" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity" xlink:label="tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity_638584680862594994" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems_638584680862594994" xlink:to="tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity_638584680862594994" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_CreditAgreementTotalAggregatePrincipalAmount" xlink:label="tcmd_CreditAgreementTotalAggregatePrincipalAmount_638584680862594994" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems_638584680862594994" xlink:to="tcmd_CreditAgreementTotalAggregatePrincipalAmount_638584680862594994" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt_638584680862594994" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems_638584680862594994" xlink:to="us-gaap_LongTermDebt_638584680862594994" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit_638584680862594994" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems_638584680862594994" xlink:to="us-gaap_LineOfCredit_638584680862594994" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment" xlink:label="tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment_638584680862604982" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems_638584680862594994" xlink:to="tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment_638584680862604982" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_638584680862604982" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems_638584680862594994" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_638584680862604982" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:label="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_638584680862604982" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems_638584680862594994" xlink:to="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_638584680862604982" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfDebt" xlink:label="us-gaap_ProceedsFromIssuanceOfDebt_638584680862604982" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems_638584680862594994" xlink:to="us-gaap_ProceedsFromIssuanceOfDebt_638584680862604982" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:label="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment_638584680862604982" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems_638584680862594994" xlink:to="us-gaap_DebtInstrumentFrequencyOfPeriodicPayment_638584680862604982" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentPeriodicPayment" xlink:label="us-gaap_DebtInstrumentPeriodicPayment_638584680862604982" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems_638584680862594994" xlink:to="us-gaap_DebtInstrumentPeriodicPayment_638584680862604982" order="12" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails" xlink:type="extended" xlink:title="99940802 - Disclosure - Credit Agreement - Maturities of Debt (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract_3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="us-gaap_LineOfCreditFacilityTable_638584680862614984" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract_3" xlink:to="us-gaap_LineOfCreditFacilityTable_638584680862614984" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis_638584680862614984" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable_638584680862614984" xlink:to="us-gaap_CreditFacilityAxis_638584680862614984" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain_638584680862614984" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis_638584680862614984" xlink:to="us-gaap_CreditFacilityDomain_638584680862614984" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TermLoanMember" xlink:label="tcmd_TermLoanMember_638584680862614984" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityDomain_638584680862614984" xlink:to="tcmd_TermLoanMember_638584680862614984" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="us-gaap_LineOfCreditFacilityLineItems_638584680862614984" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable_638584680862614984" xlink:to="us-gaap_LineOfCreditFacilityLineItems_638584680862614984" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtByMaturityAbstract" xlink:label="us-gaap_LongTermDebtByMaturityAbstract_638584680862614984" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems_638584680862614984" xlink:to="us-gaap_LongTermDebtByMaturityAbstract_638584680862614984" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_638584680862614984" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongTermDebtByMaturityAbstract_638584680862614984" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_638584680862614984" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_638584680862614984" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongTermDebtByMaturityAbstract_638584680862614984" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_638584680862614984" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_638584680862624983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongTermDebtByMaturityAbstract_638584680862614984" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_638584680862624983" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount_638584680862624983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongTermDebtByMaturityAbstract_638584680862614984" xlink:to="us-gaap_DebtInstrumentCarryingAmount_638584680862624983" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="us-gaap_DeferredFinanceCostsNet_638584680862624983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongTermDebtByMaturityAbstract_638584680862614984" xlink:to="us-gaap_DeferredFinanceCostsNet_638584680862624983" order="5" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt_638584680862624983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongTermDebtByMaturityAbstract_638584680862614984" xlink:to="us-gaap_LongTermDebt_638584680862624983" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent_638584680862624983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongTermDebtByMaturityAbstract_638584680862614984" xlink:to="us-gaap_LongTermDebtCurrent_638584680862624983" order="7" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent_638584680862624983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongTermDebtByMaturityAbstract_638584680862614984" xlink:to="us-gaap_LongTermDebtNoncurrent_638584680862624983" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="1" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails" xlink:type="extended" xlink:title="99940901 - Disclosure - Commitments and Contingencies - Lease Obligations (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeaseDescriptionTable" xlink:label="us-gaap_LesseeLeaseDescriptionTable_638584680862634980" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_LesseeLeaseDescriptionTable_638584680862634980" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis_638584680862634980" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionTable_638584680862634980" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis_638584680862634980" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain_638584680862634980" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis_638584680862634980" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain_638584680862634980" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BuildingMember" xlink:label="us-gaap_BuildingMember_638584680862634980" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_638584680862634980" xlink:to="us-gaap_BuildingMember_638584680862634980" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquipmentMember" xlink:label="us-gaap_EquipmentMember_638584680862634980" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_638584680862634980" xlink:to="us-gaap_EquipmentMember_638584680862634980" order="2" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_CorporateHeadQuarterInitialLeaseMember" xlink:label="tcmd_CorporateHeadQuarterInitialLeaseMember_638584680862634980" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_638584680862634980" xlink:to="tcmd_CorporateHeadQuarterInitialLeaseMember_638584680862634980" order="3" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_CorporateHeadQuarterSecondLeaseMember" xlink:label="tcmd_CorporateHeadQuarterSecondLeaseMember_638584680862634980" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_638584680862634980" xlink:to="tcmd_CorporateHeadQuarterSecondLeaseMember_638584680862634980" order="4" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_CorporateHeadQuarterThirdLeaseMember" xlink:label="tcmd_CorporateHeadQuarterThirdLeaseMember_638584680862634980" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_638584680862634980" xlink:to="tcmd_CorporateHeadQuarterThirdLeaseMember_638584680862634980" order="5" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis_638584680862634980" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionTable_638584680862634980" xlink:to="srt_RangeAxis_638584680862634980" order="2" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember_638584680862634980" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis_638584680862634980" xlink:to="srt_RangeMember_638584680862634980" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember_638584680862634980" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_638584680862634980" xlink:to="srt_MinimumMember_638584680862634980" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember_638584680862644972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_638584680862634980" xlink:to="srt_MaximumMember_638584680862644972" order="2" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeaseDescriptionLineItems" xlink:label="us-gaap_LesseeLeaseDescriptionLineItems_638584680862644972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionTable_638584680862634980" xlink:to="us-gaap_LesseeLeaseDescriptionLineItems_638584680862644972" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseTermOfContract" xlink:label="us-gaap_LesseeOperatingLeaseTermOfContract_638584680862644972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems_638584680862644972" xlink:to="us-gaap_LesseeOperatingLeaseTermOfContract_638584680862644972" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AreaOfLand" xlink:label="us-gaap_AreaOfLand_638584680862644972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems_638584680862644972" xlink:to="us-gaap_AreaOfLand_638584680862644972" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AdditionalOfficeSpaceAdded" xlink:label="tcmd_AdditionalOfficeSpaceAdded_638584680862644972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems_638584680862644972" xlink:to="tcmd_AdditionalOfficeSpaceAdded_638584680862644972" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend" xlink:label="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend_638584680862644972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LesseeLeaseDescriptionLineItems_638584680862644972" xlink:to="us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend_638584680862644972" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails" xlink:type="extended" xlink:title="99940902 - Disclosure - Commitments and Contingencies - Lease related assets and liabilities (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAndLiabilitiesLesseeAbstract" xlink:label="us-gaap_AssetsAndLiabilitiesLesseeAbstract_638584680862654989" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_AssetsAndLiabilitiesLesseeAbstract_638584680862654989" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList_638584680862654989" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract_638584680862654989" xlink:to="us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList_638584680862654989" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_638584680862654989" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract_638584680862654989" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_638584680862654989" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_638584680862654989" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract_638584680862654989" xlink:to="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_638584680862654989" order="3" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_638584680862654989" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract_638584680862654989" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_638584680862654989" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_638584680862654989" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract_638584680862654989" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList_638584680862654989" order="5" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_638584680862654989" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract_638584680862654989" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_638584680862654989" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability_638584680862654989" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract_638584680862654989" xlink:to="us-gaap_OperatingLeaseLiability_638584680862654989" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_638584680862654989" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract_638584680862654989" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_638584680862654989" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_638584680862654989" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract_638584680862654989" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_638584680862654989" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments_638584680862664983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract_638584680862654989" xlink:to="us-gaap_OperatingLeasePayments_638584680862664983" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_638584680862664983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract_638584680862654989" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_638584680862664983" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails" xlink:type="extended" xlink:title="99940903 - Disclosure - Commitments and Contingencies - Undiscounted cash flows (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:label="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_638584680862664983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_638584680862664983" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_638584680862664983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_638584680862664983" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_638584680862664983" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_638584680862664983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_638584680862664983" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_638584680862664983" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_638584680862664983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_638584680862664983" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_638584680862664983" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_638584680862664983" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_638584680862664983" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_638584680862664983" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_638584680862674979" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_638584680862664983" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_638584680862674979" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:label="tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_638584680862674979" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_638584680862664983" xlink:to="tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_638584680862674979" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_638584680862674979" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_638584680862664983" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_638584680862674979" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_638584680862674979" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_638584680862664983" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_638584680862674979" order="8" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="9" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability_638584680862674979" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_638584680862664983" xlink:to="us-gaap_OperatingLeaseLiability_638584680862674979" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_638584680862674979" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_638584680862664983" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_638584680862674979" order="10" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_638584680862674979" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_638584680862664983" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_638584680862674979" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="9" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseCommitmentsAndOperatingLeaseCostDetails" xlink:type="extended" xlink:title="99940904 - Disclosure - Commitments and Contingencies - Lease commitments and operating lease cost (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense_638584680862684982" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense_638584680862684982" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails" xlink:type="extended" xlink:title="99940905 - Disclosure - Commitments and Contingencies - Major Vendors (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTable" xlink:label="us-gaap_ConcentrationRiskTable_638584680862684982" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_ConcentrationRiskTable_638584680862684982" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis_638584680862684982" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskTable_638584680862684982" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis_638584680862684982" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_638584680862684982" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis_638584680862684982" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain_638584680862684982" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsTotalMember" xlink:label="us-gaap_CostOfGoodsTotalMember_638584680862684982" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_638584680862684982" xlink:to="us-gaap_CostOfGoodsTotalMember_638584680862684982" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis_638584680862684982" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskTable_638584680862684982" xlink:to="us-gaap_ConcentrationRiskByTypeAxis_638584680862684982" order="2" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain_638584680862694993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis_638584680862684982" xlink:to="us-gaap_ConcentrationRiskTypeDomain_638584680862694993" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplierConcentrationRiskMember" xlink:label="us-gaap_SupplierConcentrationRiskMember_638584680862694993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskTypeDomain_638584680862694993" xlink:to="us-gaap_SupplierConcentrationRiskMember_638584680862694993" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis" xlink:label="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_638584680862694993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskTable_638584680862684982" xlink:to="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_638584680862694993" order="3" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain" xlink:label="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_638584680862694993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_638584680862694993" xlink:to="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_638584680862694993" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_VendorOneMember" xlink:label="tcmd_VendorOneMember_638584680862694993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_638584680862694993" xlink:to="tcmd_VendorOneMember_638584680862694993" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_VendorTwoMember" xlink:label="tcmd_VendorTwoMember_638584680862694993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_638584680862694993" xlink:to="tcmd_VendorTwoMember_638584680862694993" order="2" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="us-gaap_ConcentrationRiskLineItems_638584680862694993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskTable_638584680862684982" xlink:to="us-gaap_ConcentrationRiskLineItems_638584680862694993" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_NumberOfVendors" xlink:label="tcmd_NumberOfVendors_638584680862694993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskLineItems_638584680862694993" xlink:to="tcmd_NumberOfVendors_638584680862694993" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1_638584680862694993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskLineItems_638584680862694993" xlink:to="us-gaap_ConcentrationRiskPercentage1_638584680862694993" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesPurchaseCommitmentsDetails" xlink:type="extended" xlink:title="99940906 - Disclosure - Commitments and Contingencies - Purchase Commitments (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationFiscalYearMaturityAbstract" xlink:label="us-gaap_PurchaseObligationFiscalYearMaturityAbstract_638584680862704977" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_PurchaseObligationFiscalYearMaturityAbstract_638584680862704977" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueInNextTwelveMonths" xlink:label="us-gaap_PurchaseObligationDueInNextTwelveMonths_638584680862704977" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PurchaseObligationFiscalYearMaturityAbstract_638584680862704977" xlink:to="us-gaap_PurchaseObligationDueInNextTwelveMonths_638584680862704977" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="3" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesRetirementPlanDetails" xlink:type="extended" xlink:title="99940907 - Disclosure - Commitments and Contingencies - Retirement Plan (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanTable" xlink:label="us-gaap_DefinedContributionPlanTable_638584680862704977" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_DefinedContributionPlanTable_638584680862704977" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetirementPlanNameAxis" xlink:label="us-gaap_RetirementPlanNameAxis_638584680862704977" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedContributionPlanTable_638584680862704977" xlink:to="us-gaap_RetirementPlanNameAxis_638584680862704977" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetirementPlanNameDomain" xlink:label="us-gaap_RetirementPlanNameDomain_638584680862714969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RetirementPlanNameAxis_638584680862704977" xlink:to="us-gaap_RetirementPlanNameDomain_638584680862714969" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DefinedContribution401kRetirementPlanMember" xlink:label="tcmd_DefinedContribution401kRetirementPlanMember_638584680862714969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RetirementPlanNameDomain_638584680862714969" xlink:to="tcmd_DefinedContribution401kRetirementPlanMember_638584680862714969" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanDisclosureLineItems" xlink:label="us-gaap_DefinedContributionPlanDisclosureLineItems_638584680862714969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedContributionPlanTable_638584680862704977" xlink:to="us-gaap_DefinedContributionPlanDisclosureLineItems_638584680862714969" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:label="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount_638584680862714969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedContributionPlanDisclosureLineItems_638584680862714969" xlink:to="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount_638584680862714969" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails" xlink:type="extended" xlink:title="99940908 - Disclosure - Commitments and Contingencies - Legal Proceedings (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_637496182701913724" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LossContingenciesTable" xlink:label="us-gaap_LossContingenciesTable_638584680862714969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_637496182701913724" xlink:to="us-gaap_LossContingenciesTable_638584680862714969" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_LitigationCaseAxis" xlink:label="srt_LitigationCaseAxis_638584680862714969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesTable_638584680862714969" xlink:to="srt_LitigationCaseAxis_638584680862714969" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain_638584680862714969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_LitigationCaseAxis_638584680862714969" xlink:to="srt_LitigationCaseTypeDomain_638584680862714969" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_WeaverLawsuitMember" xlink:label="tcmd_WeaverLawsuitMember_638584680862714969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_LitigationCaseTypeDomain_638584680862714969" xlink:to="tcmd_WeaverLawsuitMember_638584680862714969" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LossContingenciesLineItems" xlink:label="us-gaap_LossContingenciesLineItems_638584680862725325" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesTable_638584680862714969" xlink:to="us-gaap_LossContingenciesLineItems_638584680862725325" order="2" use="optional" priority="4" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_NumberOfOfficerAndDirectors" xlink:label="tcmd_NumberOfOfficerAndDirectors_638584680862725325" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesLineItems_638584680862725325" xlink:to="tcmd_NumberOfOfficerAndDirectors_638584680862725325" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LitigationSettlementLoss" xlink:label="us-gaap_LitigationSettlementLoss_638584680862725325" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesLineItems_638584680862725325" xlink:to="us-gaap_LitigationSettlementLoss_638584680862725325" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails" xlink:type="extended" xlink:title="99941001 - Disclosure - Stockholders' Equity - Stock-Based Compensation (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityNoteAbstract" xlink:label="us-gaap_StockholdersEquityNoteAbstract_636068732490018874" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_638584680862725325" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityNoteAbstract_636068732490018874" xlink:to="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_638584680862725325" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis_638584680862725325" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_638584680862725325" xlink:to="us-gaap_PlanNameAxis_638584680862725325" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain_638584680862725325" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis_638584680862725325" xlink:to="us-gaap_PlanNameDomain_638584680862725325" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_EquityIncentivePlan2016Member" xlink:label="tcmd_EquityIncentivePlan2016Member_638584680862725325" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameDomain_638584680862725325" xlink:to="tcmd_EquityIncentivePlan2016Member_638584680862725325" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis_638584680862735000" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_638584680862725325" xlink:to="us-gaap_IncomeStatementLocationAxis_638584680862735000" order="2" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain_638584680862735000" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationAxis_638584680862735000" xlink:to="us-gaap_IncomeStatementLocationDomain_638584680862735000" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember_638584680862735000" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationDomain_638584680862735000" xlink:to="us-gaap_CostOfSalesMember_638584680862735000" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingAndMarketingExpenseMember" xlink:label="us-gaap_SellingAndMarketingExpenseMember_638584680862735000" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationDomain_638584680862735000" xlink:to="us-gaap_SellingAndMarketingExpenseMember_638584680862735000" order="2" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="us-gaap_ResearchAndDevelopmentExpenseMember_638584680862735000" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationDomain_638584680862735000" xlink:to="us-gaap_ResearchAndDevelopmentExpenseMember_638584680862735000" order="3" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="us-gaap_GeneralAndAdministrativeExpenseMember_638584680862735000" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationDomain_638584680862735000" xlink:to="us-gaap_GeneralAndAdministrativeExpenseMember_638584680862735000" order="4" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_638584680862735000" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_638584680862725325" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_638584680862735000" order="3" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAbstract" xlink:label="us-gaap_ShareBasedCompensationAbstract_638584680862735000" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_638584680862735000" xlink:to="us-gaap_ShareBasedCompensationAbstract_638584680862735000" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_638584680862735000" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationAbstract_638584680862735000" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_638584680862735000" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage_638584680862744968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationAbstract_638584680862735000" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage_638584680862744968" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber_638584680862744968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationAbstract_638584680862735000" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber_638584680862744968" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized_638584680862744968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationAbstract_638584680862735000" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized_638584680862744968" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_638584680862744968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationAbstract_638584680862735000" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_638584680862744968" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_638584680862744968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationAbstract_638584680862735000" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense_638584680862744968" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="5" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails" xlink:type="extended" xlink:title="99941002 - Disclosure - Stockholders' Equity - Stock Options and Restricted Stock (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityNoteAbstract" xlink:label="us-gaap_StockholdersEquityNoteAbstract_636068748695208874" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_638584680862754969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityNoteAbstract_636068748695208874" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_638584680862754969" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis_638584680862754969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_638584680862754969" xlink:to="us-gaap_PlanNameAxis_638584680862754969" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain_638584680862754969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis_638584680862754969" xlink:to="us-gaap_PlanNameDomain_638584680862754969" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_EquityIncentivePlan2016Member" xlink:label="tcmd_EquityIncentivePlan2016Member_638584680862754969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameDomain_638584680862754969" xlink:to="tcmd_EquityIncentivePlan2016Member_638584680862754969" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VestingAxis" xlink:label="us-gaap_VestingAxis_638584680862754969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_638584680862754969" xlink:to="us-gaap_VestingAxis_638584680862754969" order="2" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VestingDomain" xlink:label="us-gaap_VestingDomain_638584680862754969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VestingAxis_638584680862754969" xlink:to="us-gaap_VestingDomain_638584680862754969" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheOneMember_638584680862754969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VestingDomain_638584680862754969" xlink:to="us-gaap_ShareBasedCompensationAwardTrancheOneMember_638584680862754969" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAwardTrancheTwoMember" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheTwoMember_638584680862754969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VestingDomain_638584680862754969" xlink:to="us-gaap_ShareBasedCompensationAwardTrancheTwoMember_638584680862754969" order="2" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAwardTrancheThreeMember" xlink:label="us-gaap_ShareBasedCompensationAwardTrancheThreeMember_638584680862754969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VestingDomain_638584680862754969" xlink:to="us-gaap_ShareBasedCompensationAwardTrancheThreeMember_638584680862754969" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis_638584680862754969" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_638584680862754969" xlink:to="us-gaap_AwardTypeAxis_638584680862754969" order="3" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_638584680862764965" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis_638584680862754969" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_638584680862764965" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember_638584680862764965" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_638584680862764965" xlink:to="us-gaap_EmployeeStockOptionMember_638584680862764965" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember_638584680862764965" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_638584680862764965" xlink:to="us-gaap_RestrictedStockUnitsRSUMember_638584680862764965" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TimeBasedRestrictedStockUnitsRsusMember" xlink:label="tcmd_TimeBasedRestrictedStockUnitsRsusMember_638584680862764965" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestrictedStockUnitsRSUMember_638584680862764965" xlink:to="tcmd_TimeBasedRestrictedStockUnitsRsusMember_638584680862764965" order="1" use="optional" priority="3" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember" xlink:label="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_638584680862764965" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestrictedStockUnitsRSUMember_638584680862764965" xlink:to="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_638584680862764965" order="2" use="optional" priority="1" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TwoThousandTwentySixPsuMember" xlink:label="tcmd_TwoThousandTwentySixPsuMember_638584680862764965" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_638584680862764965" xlink:to="tcmd_TwoThousandTwentySixPsuMember_638584680862764965" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TwoThousandTwentyFivePsuMember" xlink:label="tcmd_TwoThousandTwentyFivePsuMember_638584680862764965" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_638584680862764965" xlink:to="tcmd_TwoThousandTwentyFivePsuMember_638584680862764965" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TwoThousandTwentyFourPsuMember" xlink:label="tcmd_TwoThousandTwentyFourPsuMember_638584680862764965" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_638584680862764965" xlink:to="tcmd_TwoThousandTwentyFourPsuMember_638584680862764965" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_TwoThousandTwentyThreePsuMember" xlink:label="tcmd_TwoThousandTwentyThreePsuMember_638584680862764965" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_638584680862764965" xlink:to="tcmd_TwoThousandTwentyThreePsuMember_638584680862764965" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis_638584680862774967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_638584680862754969" xlink:to="srt_RangeAxis_638584680862774967" order="4" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember_638584680862774967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis_638584680862774967" xlink:to="srt_RangeMember_638584680862774967" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember_638584680862774967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_638584680862774967" xlink:to="srt_MinimumMember_638584680862774967" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember_638584680862774967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_638584680862774967" xlink:to="srt_MaximumMember_638584680862774967" order="2" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_638584680862774967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_638584680862754969" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_638584680862774967" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_638584680862774967" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_638584680862774967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_638584680862774967" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_638584680862785412" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_638584680862785412" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_638584680862785412" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense_638584680862785412" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_638584680862785412" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_638584680862785412" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_638584680862785412" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_638584680862785412" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_638584680862785412" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_638584680862785412" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods_638584680862794984" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods_638584680862794984" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_638584680862794984" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_638584680862794984" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin_638584680862794984" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin_638584680862794984" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_638584680862794984" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_638584680862794984" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_638584680862794984" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_638584680862794984" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_638584680862794984" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_638584680862794984" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_638584680862794984" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_638584680862794984" order="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_638584680862804972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_638584680862794984" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_638584680862804972" order="3" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_638584680862804972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_638584680862794984" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_638584680862804972" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_638584680862804972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_638584680862804972" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_638584680862804972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_638584680862804972" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_638584680862804972" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_638584680862804972" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_638584680862804972" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_638584680862804972" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_638584680862814966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_638584680862804972" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_638584680862814966" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_638584680862814966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_638584680862804972" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_638584680862814966" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_638584680862814966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_638584680862814966" order="12" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_638584680862814966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_638584680862814966" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_638584680862814966" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_638584680862814966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_638584680862814966" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_638584680862814966" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_638584680862824964" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_638584680862814966" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_638584680862824964" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_638584680862824964" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_638584680862814966" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_638584680862824964" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_638584680862824964" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_638584680862814966" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_638584680862824964" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_638584680862824964" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_638584680862814966" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_638584680862824964" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_638584680862824964" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_638584680862814966" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_638584680862824964" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_638584680862834966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_638584680862834966" order="13" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_638584680862834966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_638584680862834966" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_638584680862834966" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_638584680862834966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_638584680862834966" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_638584680862834966" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_638584680862834966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_638584680862834966" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_638584680862834966" order="3" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="8" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod_638584680862844963" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_638584680862834966" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod_638584680862844963" order="4" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_638584680862844963" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_638584680862834966" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_638584680862844963" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_638584680862844963" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_638584680862844963" order="14" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_638584680862844963" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_638584680862844963" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_638584680862844963" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_638584680862854962" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_638584680862844963" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_638584680862854962" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_638584680862854962" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_638584680862844963" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_638584680862854962" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue" xlink:label="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue_638584680862854962" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_638584680862844963" xlink:to="tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue_638584680862854962" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_638584680862854962" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_638584680862844963" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_638584680862854962" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_638584680862864968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract_638584680862774967" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_638584680862864968" order="15" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_638584680862864968" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_638584680862864968" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_638584680862864968" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails" xlink:type="extended" xlink:title="99941003 - Disclosure - Stockholders' Equity - Employee Stock Purchase Plan (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityNoteAbstract" xlink:label="us-gaap_StockholdersEquityNoteAbstract_636068770131448656" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfStockByClassTable" xlink:label="us-gaap_ScheduleOfStockByClassTable_638584680862874967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityNoteAbstract_636068770131448656" xlink:to="us-gaap_ScheduleOfStockByClassTable_638584680862874967" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsidiarySaleOfStockAxis" xlink:label="us-gaap_SubsidiarySaleOfStockAxis_638584680862874967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfStockByClassTable_638584680862874967" xlink:to="us-gaap_SubsidiarySaleOfStockAxis_638584680862874967" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="us-gaap_SaleOfStockNameOfTransactionDomain_638584680862874967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SubsidiarySaleOfStockAxis_638584680862874967" xlink:to="us-gaap_SaleOfStockNameOfTransactionDomain_638584680862874967" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockMember" xlink:label="us-gaap_EmployeeStockMember_638584680862874967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SaleOfStockNameOfTransactionDomain_638584680862874967" xlink:to="us-gaap_EmployeeStockMember_638584680862874967" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis_638584680862874967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfStockByClassTable_638584680862874967" xlink:to="us-gaap_PlanNameAxis_638584680862874967" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain_638584680862874967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis_638584680862874967" xlink:to="us-gaap_PlanNameDomain_638584680862874967" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_EquityIncentivePlan2016Member" xlink:label="tcmd_EquityIncentivePlan2016Member_638584680862874967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameDomain_638584680862874967" xlink:to="tcmd_EquityIncentivePlan2016Member_638584680862874967" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfStockLineItems" xlink:label="us-gaap_ClassOfStockLineItems_638584680862874967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfStockByClassTable_638584680862874967" xlink:to="us-gaap_ClassOfStockLineItems_638584680862874967" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_638584680862874967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfStockLineItems_638584680862874967" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_638584680862874967" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod" xlink:label="tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod_638584680862884966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfStockLineItems_638584680862874967" xlink:to="tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod_638584680862884966" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_638584680862884966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfStockLineItems_638584680862874967" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_638584680862884966" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="6" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_IncrementalSharesToBeIssuedPercentage" xlink:label="tcmd_IncrementalSharesToBeIssuedPercentage_638584680862884966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfStockLineItems_638584680862874967" xlink:to="tcmd_IncrementalSharesToBeIssuedPercentage_638584680862884966" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_IncrementalShareIncrease" xlink:label="tcmd_IncrementalShareIncrease_638584680862884966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfStockLineItems_638584680862874967" xlink:to="tcmd_IncrementalShareIncrease_638584680862884966" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_638584680862884966" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfStockLineItems_638584680862874967" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense_638584680862884966" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="6" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureRevenueDetails" xlink:type="extended" xlink:title="99941101 - Disclosure - Revenue (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable_638584680862894993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_DisaggregationOfRevenueTable_638584680862894993" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis_638584680862894993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable_638584680862894993" xlink:to="srt_ProductOrServiceAxis_638584680862894993" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain_638584680862894993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis_638584680862894993" xlink:to="srt_ProductsAndServicesDomain_638584680862894993" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_LymphedemaProductsMember" xlink:label="tcmd_LymphedemaProductsMember_638584680862894993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain_638584680862894993" xlink:to="tcmd_LymphedemaProductsMember_638584680862894993" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_AirwayClearanceProductsMember" xlink:label="tcmd_AirwayClearanceProductsMember_638584680862894993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain_638584680862894993" xlink:to="tcmd_AirwayClearanceProductsMember_638584680862894993" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis_638584680862894993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable_638584680862894993" xlink:to="srt_MajorCustomersAxis_638584680862894993" order="2" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain_638584680862894993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_MajorCustomersAxis_638584680862894993" xlink:to="srt_NameOfMajorCustomerDomain_638584680862894993" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_PrivateInsurersMember" xlink:label="tcmd_PrivateInsurersMember_638584680862894993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_NameOfMajorCustomerDomain_638584680862894993" xlink:to="tcmd_PrivateInsurersMember_638584680862894993" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_VeteransAdministrationMember" xlink:label="tcmd_VeteransAdministrationMember_638584680862894993" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_NameOfMajorCustomerDomain_638584680862894993" xlink:to="tcmd_VeteransAdministrationMember_638584680862894993" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_MedicareMember" xlink:label="tcmd_MedicareMember_638584680862905029" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_NameOfMajorCustomerDomain_638584680862894993" xlink:to="tcmd_MedicareMember_638584680862905029" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DurableMedicalEquipmentDistributorsMember" xlink:label="tcmd_DurableMedicalEquipmentDistributorsMember_638584680862905029" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_NameOfMajorCustomerDomain_638584680862894993" xlink:to="tcmd_DurableMedicalEquipmentDistributorsMember_638584680862905029" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis_638584680862905029" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable_638584680862894993" xlink:to="srt_RangeAxis_638584680862905029" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember_638584680862905029" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis_638584680862905029" xlink:to="srt_RangeMember_638584680862905029" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember_638584680862905029" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_638584680862905029" xlink:to="srt_MinimumMember_638584680862905029" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember_638584680862905029" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_638584680862905029" xlink:to="srt_MaximumMember_638584680862905029" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems_638584680862905029" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueTable_638584680862894993" xlink:to="us-gaap_DisaggregationOfRevenueLineItems_638584680862905029" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_638584680862905029" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems_638584680862905029" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_638584680862905029" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="5" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_PercentageOfRevenue" xlink:label="tcmd_PercentageOfRevenue_638584680862915006" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems_638584680862905029" xlink:to="tcmd_PercentageOfRevenue_638584680862915006" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesTypeLeaseLeaseIncomeAbstract" xlink:label="us-gaap_SalesTypeLeaseLeaseIncomeAbstract_638584680862915006" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisaggregationOfRevenueLineItems_638584680862905029" xlink:to="us-gaap_SalesTypeLeaseLeaseIncomeAbstract_638584680862915006" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesTypeLeaseRevenue" xlink:label="us-gaap_SalesTypeLeaseRevenue_638584680862915006" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SalesTypeLeaseLeaseIncomeAbstract_638584680862915006" xlink:to="us-gaap_SalesTypeLeaseRevenue_638584680862915006" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsSoldSalesTypeLease" xlink:label="us-gaap_CostOfGoodsSoldSalesTypeLease_638584680862915006" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SalesTypeLeaseLeaseIncomeAbstract_638584680862915006" xlink:to="us-gaap_CostOfGoodsSoldSalesTypeLease_638584680862915006" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesTypeLeaseSellingProfitLoss" xlink:label="us-gaap_SalesTypeLeaseSellingProfitLoss_638584680862915006" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SalesTypeLeaseLeaseIncomeAbstract_638584680862915006" xlink:to="us-gaap_SalesTypeLeaseSellingProfitLoss_638584680862915006" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_RentToPurchaseArrangementsRentalPeriod" xlink:label="tcmd_RentToPurchaseArrangementsRentalPeriod_638584680862915006" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SalesTypeLeaseLeaseIncomeAbstract_638584680862915006" xlink:to="tcmd_RentToPurchaseArrangementsRentalPeriod_638584680862915006" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureIncomeTaxesDetails" xlink:type="extended" xlink:title="99941201 - Disclosure - Income Taxes (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_636154942059491163" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit_638584680862984975" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_636154942059491163" xlink:to="us-gaap_IncomeTaxExpenseBenefit_638584680862984975" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_638584680862984975" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_636154942059491163" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_638584680862984975" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_638584680862984975" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_638584680862984975" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations_638584680862984975" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareBasicAndDilutedNetIncomeLossPerShareDetails" xlink:type="extended" xlink:title="99941301 - Disclosure - Net Income (Loss) Per Share - Basic and Diluted Net income (Loss) Per Share (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss_638584680862984975" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_NetIncomeLoss_638584680862984975" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_638584680862984975" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_638584680862984975" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_638584680862984975" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_638584680862984975" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic_638584680862984975" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareBasic_638584680862984975" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted_638584680862995009" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareDiluted_638584680862995009" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails" xlink:type="extended" xlink:title="99941302 - Disclosure - Net Income (Loss) Per Share - Antidilutive Securities Excluded From Computation of Earnings Per Share (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_638584680862995009" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_638584680862995009" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_638584680862995009" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_638584680862995009" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_638584680862995009" order="1" use="optional" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain_638584680862995009" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_638584680862995009" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain_638584680862995009" order="1" use="optional" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember_638584680862995009" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain_638584680862995009" xlink:to="us-gaap_RestrictedStockUnitsRSUMember_638584680862995009" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember_638584680863004992" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain_638584680862995009" xlink:to="us-gaap_EmployeeStockOptionMember_638584680863004992" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PerformanceSharesMember" xlink:label="us-gaap_PerformanceSharesMember_638584680863004992" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain_638584680862995009" xlink:to="us-gaap_PerformanceSharesMember_638584680863004992" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_EmployeeStockPurchasePlanMember" xlink:label="tcmd_EmployeeStockPurchasePlanMember_638584680863004992" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain_638584680862995009" xlink:to="tcmd_EmployeeStockPurchasePlanMember_638584680863004992" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_638584680863004992" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_638584680862995009" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_638584680863004992" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_638584680863004992" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_638584680863004992" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_638584680863004992" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsEarnOutLiabilityDetails" xlink:type="extended" xlink:title="99941401 - Disclosure - Fair Value Measurements - Earn out liability (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="us-gaap_FairValueDisclosuresAbstract_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_638584680863004992" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueDisclosuresAbstract_1" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_638584680863004992" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis_638584680863004992" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_638584680863004992" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis_638584680863004992" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_638584680863004992" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis_638584680863004992" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_638584680863004992" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member_638584680863014976" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_638584680863004992" xlink:to="us-gaap_FairValueInputsLevel3Member_638584680863014976" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_638584680863014976" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_638584680863004992" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_638584680863014976" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiability_638584680863014976" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_638584680863014976" xlink:to="us-gaap_BusinessCombinationContingentConsiderationLiability_638584680863014976" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_638584680863014976" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_638584680863014976" xlink:to="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_638584680863014976" order="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_638584680863014976" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_638584680863014976" xlink:to="us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_638584680863014976" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiability_6385846808630149761" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_638584680863014976" xlink:to="us-gaap_BusinessCombinationContingentConsiderationLiability_6385846808630149761" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="2" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsFairValueHierarchyDetails" xlink:type="extended" xlink:title="99941402 - Disclosure - Fair Value Measurements - Fair Value Hierarchy (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="us-gaap_FairValueDisclosuresAbstract_636232959102466343_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities" xlink:label="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_638584680863014976" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueDisclosuresAbstract_636232959102466343_1" xlink:to="us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities_638584680863014976" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment" xlink:label="tcmd_BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment_638584680863014976" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueDisclosuresAbstract_636232959102466343_1" xlink:to="tcmd_BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment_638584680863014976" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" xlink:type="extended" xlink:title="995445 - Disclosure - Insider Trading Arrangements">
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ecd_AllIndividualsMember_638584680863024974" xlink:to="tcmd_KristieT.BurnsMember_638584680863024974" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ecd_AllIndividualsMember_638584680863024974" xlink:to="tcmd_WilliamW.BurkeMember_638584680863024974" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ecd_AllIndividualsMember_638584680863024974" xlink:to="tcmd_ElaineM.BirkemeyerMember_638584680863024974" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ecd_AllIndividualsMember_638584680863024974" xlink:to="tcmd_DanielL.ReuversMember_638584680863024974" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd#ecd_AllIndividualsMember" xlink:label="ecd_AllIndividualsMember_638584680863024974" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_KristieT.BurnsMember" xlink:label="tcmd_KristieT.BurnsMember_638584680863024974" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_WilliamW.BurkeMember" xlink:label="tcmd_WilliamW.BurkeMember_638584680863024974" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_ElaineM.BirkemeyerMember" xlink:label="tcmd_ElaineM.BirkemeyerMember_638584680863024974" />
    <link:loc xlink:type="locator" xlink:href="tcmd-20240630.xsd#tcmd_DanielL.ReuversMember" xlink:label="tcmd_DanielL.ReuversMember_638584680863024974" />
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446483633840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Document and Entity Information - shares<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Aug. 01, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Document and Entity 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_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-Q<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentQuarterlyReport', window );">Document Quarterly Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Jun. 30,  2024<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>
</tr>
<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-37799<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">Tactile Systems Technology, Inc.<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">DE<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">41-1801204<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">3701 Wayzata Blvd, Suite 300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Minneapolis<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">MN<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">55416<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">612<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">355-5100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock, Par Value $0.001 Per Share<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">TCMD<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">23,966,748<span></span>
</td>
</tr>
<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">0001027838<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>
</tr>
<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">2024<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_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_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentQuarterlyReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an quarterly report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-Q<br> -Number 240<br> -Section 308<br> -Subsection a<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentQuarterlyReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCurrentReportingStatus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-T<br> -Number 232<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityInteractiveDataCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityShellCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates that the company is a Smaller Reporting Company (SRC).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntitySmallBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446483150336">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current assets</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 73,618<span></span>
</td>
<td class="nump">$ 61,033<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable</a></td>
<td class="nump">41,935<span></span>
</td>
<td class="nump">43,173<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetInvestmentInLease', window );">Net investment in leases</a></td>
<td class="nump">13,551<span></span>
</td>
<td class="nump">14,195<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">18,846<span></span>
</td>
<td class="nump">22,527<span></span>
</td>
</tr>
<tr class="ro">
<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">3,909<span></span>
</td>
<td class="nump">4,366<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">151,859<span></span>
</td>
<td class="nump">145,294<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsMiscellaneousAbstract', window );"><strong>Non-current assets</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_PropertyPlantAndEquipmentNet', window );">Property and equipment, net</a></td>
<td class="nump">5,691<span></span>
</td>
<td class="nump">6,195<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Right of use operating lease assets</a></td>
<td class="nump">17,828<span></span>
</td>
<td class="nump">19,128<span></span>
</td>
</tr>
<tr class="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">44,883<span></span>
</td>
<td class="nump">46,724<span></span>
</td>
</tr>
<tr class="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">31,063<span></span>
</td>
<td class="nump">31,063<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_tcmd_MedicareAccountsReceivableNonCurrent', window );">Accounts receivable, non-current</a></td>
<td class="nump">4,511<span></span>
</td>
<td class="nump">10,936<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxAssetsNet', window );">Deferred income taxes</a></td>
<td class="nump">19,408<span></span>
</td>
<td class="nump">19,378<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsNoncurrent', window );">Other non-current assets</a></td>
<td class="nump">3,541<span></span>
</td>
<td class="nump">2,720<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_AssetsNoncurrent', window );">Total non-current assets</a></td>
<td class="nump">126,925<span></span>
</td>
<td class="nump">136,144<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_Assets', window );">Total assets</a></td>
<td class="nump">278,784<span></span>
</td>
<td class="nump">281,438<span></span>
</td>
</tr>
<tr class="ro">
<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="re">
<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">5,094<span></span>
</td>
<td class="nump">6,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_NotesPayableCurrent', window );">Note payable</a></td>
<td class="nump">2,956<span></span>
</td>
<td class="nump">2,956<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeRelatedLiabilitiesCurrent', window );">Accrued payroll and related taxes</a></td>
<td class="nump">12,090<span></span>
</td>
<td class="nump">16,789<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued expenses</a></td>
<td class="nump">6,702<span></span>
</td>
<td class="nump">5,904<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedIncomeTaxesCurrent', window );">Income taxes payable</a></td>
<td class="nump">496<span></span>
</td>
<td class="nump">1,467<span></span>
</td>
</tr>
<tr class="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 liabilities</a></td>
<td class="nump">2,799<span></span>
</td>
<td class="nump">2,807<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesCurrent', window );">Other current liabilities</a></td>
<td class="nump">4,075<span></span>
</td>
<td class="nump">4,475<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">34,212<span></span>
</td>
<td class="nump">41,057<span></span>
</td>
</tr>
<tr class="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>Non-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_LongTermNotesPayable', window );">Note payable, non-current</a></td>
<td class="nump">24,698<span></span>
</td>
<td class="nump">26,176<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualNoncurrent', window );">Accrued warranty reserve, non-current</a></td>
<td class="nump">1,561<span></span>
</td>
<td class="nump">1,681<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedIncomeTaxesNoncurrent', window );">Income taxes payable, non-current</a></td>
<td class="nump">495<span></span>
</td>
<td class="nump">446<span></span>
</td>
</tr>
<tr class="re">
<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 liabilities, non-current</a></td>
<td class="nump">17,142<span></span>
</td>
<td class="nump">18,436<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 non-current liabilities</a></td>
<td class="nump">43,896<span></span>
</td>
<td class="nump">46,739<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">78,108<span></span>
</td>
<td class="nump">87,796<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and Contingencies (see Note 9)</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_StockholdersEquityAbstract', window );"><strong>Stockholders' equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred stock, $0.001 par value, 50,000,000 shares authorized; none issued and outstanding as of June 30, 2024 and December 31, 2023</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_CommonStockValue', window );">Common stock, $0.001 par value, 300,000,000 shares authorized; 23,966,748 shares issued and outstanding as of June 30, 2024; 23,600,584 shares issued and outstanding as of December 31, 2023</a></td>
<td class="nump">24<span></span>
</td>
<td class="nump">24<span></span>
</td>
</tr>
<tr class="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">179,669<span></span>
</td>
<td class="nump">174,724<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">20,983<span></span>
</td>
<td class="nump">18,894<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total stockholders' equity</a></td>
<td class="nump">200,676<span></span>
</td>
<td class="nump">193,642<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and stockholders' equity</a></td>
<td class="nump">$ 278,784<span></span>
</td>
<td class="nump">$ 281,438<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tcmd_MedicareAccountsReceivableNonCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 non-current accounts receivable on account of medicare.</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;">tcmd_MedicareAccountsReceivableNonCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AccruedIncomeTaxesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedIncomeTaxesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_AccruedIncomeTaxesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the unpaid sum of the known and estimated amounts payable to satisfy all domestic and foreign income tax obligations due beyond one year or the operating cycle, whichever is longer. Alternate captions include income taxes payable, noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedIncomeTaxesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_AdditionalPaidInCapital">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset recognized for present right to economic 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/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 30: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset recognized for present right to economic benefit, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_DeferredIncomeTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeRelatedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeRelatedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is 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/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482548/350-20-55-24<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 100<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-100<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482598/350-20-45-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482686/350-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 28: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 29: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-5<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 21: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_LongTermNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 notes payable (with maturities initially due after one year or beyond the operating cycle if longer), excluding current portion.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermNotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_NetInvestmentInLease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 net investment in sales-type and direct financing leases.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-7A<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479344/326-20-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-14<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479016/842-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetInvestmentInLease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_NotesPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 values as of the balance sheet date of the portions of long-term notes payable due within one year or the 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NotesPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_OtherAssetsMiscellaneousAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OtherAssetsMiscellaneousAbstract</td>
</tr>
<tr>
<td style="padding-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_OtherAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 noncurrent assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OtherLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProductWarrantyAccrualNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 due after one year (or beyond the operating cycle if longer) for estimated claims under standard and extended warranty protection rights granted to customers.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478451/942-360-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated undistributed earnings (deficit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446483005088">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets (Parenthetical) - $ / shares<br></strong></div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfFinancialPositionAbstract', window );"><strong>Condensed Consolidated Balance Sheets</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred stock, par value (in dollars per share)</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 );">Preferred stock, shares authorized</a></td>
<td class="nump">50,000,000<span></span>
</td>
<td class="nump">50,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 );">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 );">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 (in dollars per share)</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">300,000,000<span></span>
</td>
<td class="nump">300,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">23,966,748<span></span>
</td>
<td class="nump">23,600,584<span></span>
</td>
</tr>
<tr class="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">23,966,748<span></span>
</td>
<td class="nump">23,600,584<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>Number of shares issued for nonredeemable preferred shares and preferred shares redeemable solely at option of issuer. Includes, but is not limited to, preferred shares issued, repurchased, and held as treasury shares. Excludes preferred shares 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfFinancialPositionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfFinancialPositionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>R4.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446481778928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Operations - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenue</a></td>
<td class="nump">$ 73,218<span></span>
</td>
<td class="nump">$ 68,339<span></span>
</td>
<td class="nump">$ 134,306<span></span>
</td>
<td class="nump">$ 127,185<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Total cost of revenue</a></td>
<td class="nump">19,115<span></span>
</td>
<td class="nump">20,040<span></span>
</td>
<td class="nump">36,774<span></span>
</td>
<td class="nump">37,418<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_GrossProfit', window );">Gross profit</a></td>
<td class="nump">54,103<span></span>
</td>
<td class="nump">48,299<span></span>
</td>
<td class="nump">97,532<span></span>
</td>
<td class="nump">89,767<span></span>
</td>
</tr>
<tr class="ro">
<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>
<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_SellingAndMarketingExpense', window );">Sales and marketing</a></td>
<td class="nump">28,608<span></span>
</td>
<td class="nump">28,206<span></span>
</td>
<td class="nump">55,965<span></span>
</td>
<td class="nump">54,508<span></span>
</td>
</tr>
<tr class="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">2,234<span></span>
</td>
<td class="nump">1,833<span></span>
</td>
<td class="nump">4,377<span></span>
</td>
<td class="nump">4,066<span></span>
</td>
</tr>
<tr class="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 );">Reimbursement, general and administrative</a></td>
<td class="nump">16,779<span></span>
</td>
<td class="nump">14,991<span></span>
</td>
<td class="nump">33,040<span></span>
</td>
<td class="nump">30,425<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_tcmd_AmortizationOfIntangibleAssetsAndEarnOuts', window );">Intangible asset amortization and earn-out</a></td>
<td class="nump">633<span></span>
</td>
<td class="nump">1,211<span></span>
</td>
<td class="nump">1,265<span></span>
</td>
<td class="nump">2,516<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">48,254<span></span>
</td>
<td class="nump">46,241<span></span>
</td>
<td class="nump">94,647<span></span>
</td>
<td class="nump">91,515<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="nump">5,849<span></span>
</td>
<td class="nump">2,058<span></span>
</td>
<td class="nump">2,885<span></span>
</td>
<td class="num">(1,748)<span></span>
</td>
</tr>
<tr class="re">
<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 );">Other income (expense)</a></td>
<td class="nump">225<span></span>
</td>
<td class="num">(838)<span></span>
</td>
<td class="nump">380<span></span>
</td>
<td class="num">(1,831)<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income (loss) before income taxes</a></td>
<td class="nump">6,074<span></span>
</td>
<td class="nump">1,220<span></span>
</td>
<td class="nump">3,265<span></span>
</td>
<td class="num">(3,579)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax expense (benefit)</a></td>
<td class="nump">1,776<span></span>
</td>
<td class="nump">1,320<span></span>
</td>
<td class="nump">1,176<span></span>
</td>
<td class="num">(1,593)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income (loss)</a></td>
<td class="nump">$ 4,298<span></span>
</td>
<td class="num">$ (100)<span></span>
</td>
<td class="nump">$ 2,089<span></span>
</td>
<td class="num">$ (1,986)<span></span>
</td>
</tr>
<tr class="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>Net income (loss) per common share</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare', window );">Basic</a></td>
<td class="nump">$ 0.18<span></span>
</td>
<td class="nump">$ 0.00<span></span>
</td>
<td class="nump">$ 0.09<span></span>
</td>
<td class="num">$ (0.09)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare', window );">Diluted</a></td>
<td class="nump">$ 0.18<span></span>
</td>
<td class="nump">$ 0.00<span></span>
</td>
<td class="nump">$ 0.09<span></span>
</td>
<td class="num">$ (0.09)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tcmd_EarningsPerShareOtherDisclosureAbstract', window );"><strong>Weighted-average common shares used to compute net income (loss) per common share</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Basic</a></td>
<td class="nump">23,873,379<span></span>
</td>
<td class="nump">23,352,530<span></span>
</td>
<td class="nump">23,769,604<span></span>
</td>
<td class="nump">22,323,856<span></span>
</td>
</tr>
<tr class="ro">
<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">24,099,047<span></span>
</td>
<td class="nump">23,352,530<span></span>
</td>
<td class="nump">24,073,986<span></span>
</td>
<td class="nump">22,323,856<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_ProductMember', window );">Sales revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenue</a></td>
<td class="nump">$ 64,267<span></span>
</td>
<td class="nump">$ 59,802<span></span>
</td>
<td class="nump">$ 117,574<span></span>
</td>
<td class="nump">$ 112,593<span></span>
</td>
</tr>
<tr class="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 );">Total cost of revenue</a></td>
<td class="nump">16,263<span></span>
</td>
<td class="nump">16,865<span></span>
</td>
<td class="nump">31,207<span></span>
</td>
<td class="nump">31,507<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">48,004<span></span>
</td>
<td class="nump">42,937<span></span>
</td>
<td class="nump">86,367<span></span>
</td>
<td class="nump">81,086<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tcmd_RentalProductServiceMember', window );">Rental revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total revenue</a></td>
<td class="nump">8,951<span></span>
</td>
<td class="nump">8,537<span></span>
</td>
<td class="nump">16,732<span></span>
</td>
<td class="nump">14,592<span></span>
</td>
</tr>
<tr class="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 );">Total cost of revenue</a></td>
<td class="nump">2,852<span></span>
</td>
<td class="nump">3,175<span></span>
</td>
<td class="nump">5,567<span></span>
</td>
<td class="nump">5,911<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">$ 6,099<span></span>
</td>
<td class="nump">$ 5,362<span></span>
</td>
<td class="nump">$ 11,165<span></span>
</td>
<td class="nump">$ 8,681<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tcmd_AmortizationOfIntangibleAssetsAndEarnOuts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 impairment of intangible asset and earn outs.</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;">tcmd_AmortizationOfIntangibleAssetsAndEarnOuts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_tcmd_EarningsPerShareOtherDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>n/a</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;">tcmd_EarningsPerShareOtherDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_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/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_IncomeLossFromContinuingOperationsPerBasicShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) from continuing operations per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br><br>Reference 17: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsPerBasicShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) derived from continuing operations during the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482659/740-20-45-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 34: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 37: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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>Amount of expense for research and development. Includes, but is not limited to, cost for computer software product to be sold, leased, or otherwise marketed and writeoff of research and development assets acquired in transaction other than business combination or joint venture formation or both. Excludes write-down of intangible asset acquired in business combination or from joint venture formation or both, used in research and development 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> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 730<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482916/730-10-50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 912<br> -SubTopic 730<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479532/912-730-25-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_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> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=us-gaap_ProductMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=us-gaap_ProductMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=tcmd_RentalProductServiceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=tcmd_RentalProductServiceMember</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>18
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446481792672">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Stockholders' Equity - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Common Stock</div></th>
<th class="th"><div>Additional Paid-In Capital</div></th>
<th class="th"><div>Retained Earnings (Accumulated Deficit).</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 );">Balances at the beginning at Dec. 31, 2022</a></td>
<td class="nump">$ 20<span></span>
</td>
<td class="nump">$ 131,001<span></span>
</td>
<td class="num">$ (9,621)<span></span>
</td>
<td class="nump">$ 121,400<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 );">Balances at the beginning (in shares) at Dec. 31, 2022</a></td>
<td class="nump">20,252,677<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_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition', window );">Stock-based compensation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,831<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,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_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Exercise of common stock options and vesting of performance and restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11<span></span>
</td>
</tr>
<tr class="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 );">Exercise of common stock options and vesting of performance and restricted stock units (in shares)</a></td>
<td class="nump">209,809<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_StockIssuedDuringPeriodValueNewIssues', window );">Sale of common stock from follow-on public offering, net of offering expenses</a></td>
<td class="nump">$ 3<span></span>
</td>
<td class="nump">34,622<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">34,625<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Sale of common stock from follow-on public offering, net of offering expenses (in shares)</a></td>
<td class="nump">2,875,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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan', window );">Common shares issued for employee stock purchase plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">882<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">882<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans', window );">Common shares issued for employee stock purchase plan (in shares)</a></td>
<td class="nump">120,816<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 loss for the period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,986)<span></span>
</td>
<td class="num">(1,986)<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 );">Balances at the end at Jun. 30, 2023</a></td>
<td class="nump">$ 23<span></span>
</td>
<td class="nump">170,347<span></span>
</td>
<td class="num">(11,607)<span></span>
</td>
<td class="nump">158,763<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 );">Balances at the end (in shares) at Jun. 30, 2023</a></td>
<td class="nump">23,458,302<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balances at the beginning at Mar. 31, 2023</a></td>
<td class="nump">$ 23<span></span>
</td>
<td class="nump">167,646<span></span>
</td>
<td class="num">(11,507)<span></span>
</td>
<td class="nump">156,162<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 );">Balances at the beginning (in shares) at Mar. 31, 2023</a></td>
<td class="nump">23,235,065<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_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition', window );">Stock-based compensation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,808<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,808<span></span>
</td>
</tr>
<tr class="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 );">Exercise of common stock options and vesting of performance and restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11<span></span>
</td>
</tr>
<tr class="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 );">Exercise of common stock options and vesting of performance and restricted stock units (in shares)</a></td>
<td class="nump">102,421<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_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan', window );">Common shares issued for employee stock purchase plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">882<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">882<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans', window );">Common shares issued for employee stock purchase plan (in shares)</a></td>
<td class="nump">120,816<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 loss for the period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(100)<span></span>
</td>
<td class="num">(100)<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 );">Balances at the end at Jun. 30, 2023</a></td>
<td class="nump">$ 23<span></span>
</td>
<td class="nump">170,347<span></span>
</td>
<td class="num">(11,607)<span></span>
</td>
<td class="nump">158,763<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 );">Balances at the end (in shares) at Jun. 30, 2023</a></td>
<td class="nump">23,458,302<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balances at the beginning at Dec. 31, 2023</a></td>
<td class="nump">$ 24<span></span>
</td>
<td class="nump">174,724<span></span>
</td>
<td class="nump">18,894<span></span>
</td>
<td class="nump">193,642<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 );">Balances at the beginning (in shares) at Dec. 31, 2023</a></td>
<td class="nump">23,600,584<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_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition', window );">Stock-based compensation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,899<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,899<span></span>
</td>
</tr>
<tr class="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 );">Exercise of common stock options and vesting of performance and restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2<span></span>
</td>
</tr>
<tr class="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 );">Exercise of common stock options and vesting of performance and restricted stock units (in shares)</a></td>
<td class="nump">258,257<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_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan', window );">Common shares issued for employee stock purchase plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,044<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,044<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans', window );">Common shares issued for employee stock purchase plan (in shares)</a></td>
<td class="nump">107,907<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 loss for the period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,089<span></span>
</td>
<td class="nump">2,089<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 );">Balances at the end at Jun. 30, 2024</a></td>
<td class="nump">$ 24<span></span>
</td>
<td class="nump">179,669<span></span>
</td>
<td class="nump">20,983<span></span>
</td>
<td class="nump">200,676<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 );">Balances at the end (in shares) at Jun. 30, 2024</a></td>
<td class="nump">23,966,748<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balances at the beginning at Mar. 31, 2024</a></td>
<td class="nump">$ 24<span></span>
</td>
<td class="nump">176,764<span></span>
</td>
<td class="nump">16,685<span></span>
</td>
<td class="nump">193,473<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 );">Balances at the beginning (in shares) at Mar. 31, 2024</a></td>
<td class="nump">23,761,897<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_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition', window );">Stock-based compensation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,860<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,860<span></span>
</td>
</tr>
<tr class="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 );">Exercise of common stock options and vesting of performance and restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="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 );">Exercise of common stock options and vesting of performance and restricted stock units (in shares)</a></td>
<td class="nump">96,944<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_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan', window );">Common shares issued for employee stock purchase plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,044<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,044<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans', window );">Common shares issued for employee stock purchase plan (in shares)</a></td>
<td class="nump">107,907<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 loss for the period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,298<span></span>
</td>
<td class="nump">4,298<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 );">Balances at the end at Jun. 30, 2024</a></td>
<td class="nump">$ 24<span></span>
</td>
<td class="nump">$ 179,669<span></span>
</td>
<td class="nump">$ 20,983<span></span>
</td>
<td class="nump">$ 200,676<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 );">Balances at the end (in shares) at Jun. 30, 2024</a></td>
<td class="nump">23,966,748<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_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 to additional paid-in capital (APIC) for recognition of cost for option under share-based payment arrangement.</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_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncreaseDecreaseInStockholdersEquityRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a 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_IncreaseDecreaseInStockholdersEquityRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 34: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 37: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 during the period as a result of an employee stock purchase plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodSharesNewIssues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 new stock issued 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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478448/946-505-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(i)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesNewIssues</td>
</tr>
<tr>
<td style="padding-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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 change in value for stock issued during the period as a result of employee stock purchase plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_StockIssuedDuringPeriodValueNewIssues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-11<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478009/946-205-45-4<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478448/946-505-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueNewIssues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446484410128">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Cash Flows - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInContinuingOperationsAbstract', 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_ProfitLoss', window );">Net income (loss)</a></td>
<td class="nump">$ 2,089<span></span>
</td>
<td class="num">$ (1,986)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income (loss) to net cash provided by 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">3,345<span></span>
</td>
<td class="nump">3,269<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxesAndTaxCredits', window );">Deferred income taxes</a></td>
<td class="num">(30)<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_ShareBasedCompensation', window );">Stock-based compensation expense</a></td>
<td class="nump">3,899<span></span>
</td>
<td class="nump">3,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_GainLossOnDispositionOfAssets1', window );">Loss on disposal of property and equipment and intangibles</a></td>
<td class="nump">54<span></span>
</td>
<td class="nump">3<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueAdjustment', window );">Change in fair value of earn-out liability</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,230<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in assets and liabilities, net of acquisition:</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">1,238<span></span>
</td>
<td class="nump">8,273<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_tcmd_IncreaseDecreaseInNetInvestmentInLease', window );">Net investment in leases</a></td>
<td class="nump">644<span></span>
</td>
<td class="nump">2,911<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="nump">3,681<span></span>
</td>
<td class="nump">2,809<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable', window );">Income taxes</a></td>
<td class="num">(922)<span></span>
</td>
<td class="num">(3,967)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets', window );">Prepaid expenses and other assets</a></td>
<td class="num">(364)<span></span>
</td>
<td class="num">(697)<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_tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset', window );">Right of use operating lease assets</a></td>
<td class="num">(2)<span></span>
</td>
<td class="nump">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_IncreaseDecreaseInContractWithCustomerAsset', window );">Accounts receivable, non-current</a></td>
<td class="nump">6,425<span></span>
</td>
<td class="nump">7,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_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="num">(1,592)<span></span>
</td>
<td class="num">(696)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities', window );">Accrued payroll and related taxes</a></td>
<td class="num">(4,699)<span></span>
</td>
<td class="num">(3,300)<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_tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable', window );">Accrued expenses and other liabilities</a></td>
<td class="nump">300<span></span>
</td>
<td class="num">(5,954)<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">14,066<span></span>
</td>
<td class="nump">13,407<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract', 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">(982)<span></span>
</td>
<td class="num">(1,043)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment', window );">Proceeds from sale of property and equipment</a></td>
<td class="nump">12<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_PaymentsToAcquireIntangibleAssets', window );">Intangible assets expenditures</a></td>
<td class="num">(57)<span></span>
</td>
<td class="num">(99)<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 investing activities</a></td>
<td class="num">(1,027)<span></span>
</td>
<td class="num">(1,142)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract', 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_PaymentForContingentConsiderationLiabilityFinancingActivities', window );">Payments on earn-out</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(5,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_RepaymentsOfNotesPayable', window );">Payments on note payable</a></td>
<td class="num">(1,500)<span></span>
</td>
<td class="num">(1,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_ProceedsFromStockOptionsExercised', window );">Proceeds from exercise of common stock options</a></td>
<td class="nump">2<span></span>
</td>
<td class="nump">11<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans', window );">Proceeds from the issuance of common stock from the employee stock purchase plan</a></td>
<td class="nump">1,044<span></span>
</td>
<td class="nump">882<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfCommonStock', window );">Proceeds from issuance of common stock at market</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">34,625<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_NetCashProvidedByUsedInFinancingActivities', window );">Net cash (used in) provided by financing activities</a></td>
<td class="num">(454)<span></span>
</td>
<td class="nump">29,018<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect', window );">Net increase in cash and cash equivalents</a></td>
<td class="nump">12,585<span></span>
</td>
<td class="nump">41,283<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents - beginning of period</a></td>
<td class="nump">61,033<span></span>
</td>
<td class="nump">21,929<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents - end of period</a></td>
<td class="nump">73,618<span></span>
</td>
<td class="nump">63,212<span></span>
</td>
</tr>
<tr class="ro">
<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 cash flow disclosure</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_InterestPaidNet', window );">Cash paid for interest</a></td>
<td class="nump">1,099<span></span>
</td>
<td class="nump">1,925<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaid', window );">Cash paid for taxes</a></td>
<td class="nump">2,177<span></span>
</td>
<td class="nump">2,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_NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1', window );">Capital expenditures incurred but not yet paid</a></td>
<td class="nump">$ 27<span></span>
</td>
<td class="nump">$ 8<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tcmd_IncreaseDecreaseInNetInvestmentInLease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the increase (decrease) in net investment in leases.</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;">tcmd_IncreaseDecreaseInNetInvestmentInLease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the increase (decrease) in right of use operating lease assets.</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;">tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in other expenses (excluding accrued payroll and related taxes) and income taxes payable incurred but not yet paid.</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;">tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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. Excludes amount for 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://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; excluding effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -SubTopic 230<br> -Topic 830<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477401/830-230-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxesAndTaxCredits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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) and income tax credits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxesAndTaxCredits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeTaxesPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2A<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 23<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-23<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-22<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-25<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxesPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInContractWithCustomerAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInContractWithCustomerAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 income taxes receivable, which represents the amount due from tax authorities for refunds of overpayments or recoveries of income taxes paid.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInIncomeTaxesReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 prepaid expenses, and assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_LiabilitiesFairValueAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 addition (reduction) to the amount at which a liability could be incurred (settled) in a current transaction between willing parties.</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_LiabilitiesFairValueAdjustment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_NetCashProvidedByUsedInContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_NetCashProvidedByUsedInContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-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_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-25<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 value of an asset or business acquired in a noncash (or part noncash) acquisition. Noncash is defined as information about all investing and financing activities of an enterprise during a period that affect recognized assets or liabilities but that do not result in cash receipts or cash payments in the period. "Part noncash" refers to that portion of the transaction not resulting in cash receipts or cash payments in 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> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-4<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-3<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PaymentForContingentConsiderationLiabilityFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, not made soon after acquisition date of business combination, to settle contingent consideration liability up to amount recognized at acquisition date, including, but not limited to, measurement period adjustment and less amount paid soon after 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (f)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PaymentsToAcquireIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 acquire asset without physical form usually arising from contractual or other legal rights, excluding 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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 from issuance of shares under share-based payment arrangement. Excludes option exercised.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-14<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 from exercise of option 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-14<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 consolidated profit or loss for the period, net of income taxes, including the portion attributable to the 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> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478009/946-205-45-3<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 18: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4J<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4J<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4K<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4K<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-2<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_RepaymentsOfNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for a borrowing supported by a written promise to pay an obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfNotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>20
<FILENAME>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446484958592">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Nature of Business and Operations<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tcmd_NatureOfBusinessAndOperationAbstract', window );"><strong>Nature of Business and Operations</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_NatureOfOperations', window );">Nature of Business and Operations</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 1. Nature of Business and Operations</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Tactile Systems Technology, Inc. (&#8220;we,&#8221; &#8220;us,&#8221; &#8220;our,&#8221; and the &#8220;Company&#8221;) manufactures and distributes medical devices for the treatment of patients with underserved chronic diseases at home.</span> <span style="font-family:'Arial','Helvetica','sans-serif';">We provide our Flexitouch&#174; Plus and Entre&#8482; Plus systems, which help control symptoms of lymphedema, a chronic progressive medical condition, through our direct sales force for use in the home following receipt of prescriptions from vascular, wound and lymphedema clinics throughout the United States. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On September 8, 2021, we acquired the assets of the AffloVest airway clearance business (&#8220;AffloVest Acquisition&#8221;). AffloVest is a portable, wearable vest that treats patients with chronic respiratory conditions. We sell this device through home medical equipment and durable medical equipment (&#8220;DME&#8221;) providers throughout the United States.&#160;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We were originally incorporated in Minnesota under the name Tactile Systems Technology, Inc. on January 30, 1995. During 2006, we established a merger corporation and subsequently, on July 21, 2006, merged with and into this merger corporation, resulting in our reincorporation as a Delaware corporation. The resulting corporation assumed the name Tactile Systems Technology, Inc. In September 2013, we began doing business as &#8220;Tactile Medical&#8221;.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On August 2, 2016, we closed the initial public offering of our common stock, which resulted in the sale of </span><span style="font-family:'Arial','Helvetica','sans-serif';">4,120,000</span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares of our common stock at a public offering price of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$10.00</span><span style="font-family:'Arial','Helvetica','sans-serif';"> per share. We received net proceeds from the initial public offering of approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';">$35.4</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million, after deducting underwriting discounts and approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';">$2.9</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million of transaction expenses.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On February 27, 2023, we closed on a public offering of </span><span style="font-family:'Arial','Helvetica','sans-serif';">2,875,000</span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares of our common stock at a public offering price of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$13.00</span><span style="font-family:'Arial','Helvetica','sans-serif';"> per share. We received net proceeds from this offering of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$34.6</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million after deducting underwriting discounts, commissions, and offering expenses.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our business is affected by seasonality. In the first quarter of each year, when most patients have started a new insurance year and have not yet met their annual out-of-pocket payment obligations, we experience substantially reduced demand for our products. We typically experience higher revenue in the third and fourth quarters of the year when patients have met their annual insurance deductibles, thereby reducing their out-of-pocket costs for our products, and because patients desire to exhaust their flexible spending accounts at year end. This seasonality applies only to purchases and rentals of our products by patients covered by commercial insurance and is not relevant to Medicare, Medicaid or the Veterans Administration, as those payers either do not have plans that have declining deductibles over the course of the plan year and/or do not have plans that include patient deductibles for purchases or rentals of our products.</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_tcmd_NatureOfBusinessAndOperationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>n/a</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;">tcmd_NatureOfBusinessAndOperationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_NatureOfOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward.</p></div>
<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> -Name Accounting Standards Codification<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/275/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NatureOfOperations</td>
</tr>
<tr>
<td style="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>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446483704464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>Basis of Presentation</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_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock', window );">Basis of Presentation</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 2. Basis of Presentation</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States (&#8220;GAAP&#8221;) for interim financial reporting and pursuant to the rules and regulations of the SEC. Accordingly, they do not include all of the information and footnotes required by GAAP for complete financial statements. In the opinion of management, all adjustments (including those which are normal and recurring) considered necessary for a fair presentation of the interim financial information have been included.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The results for the six months ended June 30, 2024, are not necessarily indicative of results to be expected for the year ending December 31, 2024, or for any other interim period or for any future year. The condensed consolidated interim financial statements should be read in conjunction with the audited financial statements and notes thereto included in our Annual Report on Form 10-K for the year ended December 31, 2023.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Principles of Consolidation</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The accompanying unaudited condensed consolidated financial statements include the accounts of Tactile Systems Technology, Inc. and its wholly owned subsidiary, Swelling Solutions, Inc. All intercompany balances and transactions have been eliminated in consolidation.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:14pt 0pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Use of Estimates</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:14pt 0pt 0pt 0pt;"><span style="color:#2b2c2b;font-family:'Arial','Helvetica','sans-serif';">The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and to disclose contingent assets and liabilities at the date of the financial statements and the reported amounts of revenue and expenses during the reporting period. Actual results could differ from those estimates.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="color:#2b2c2b;font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</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_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 basis of presentation and significant accounting policies concepts. 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). Accounting policies describe 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 235<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/235/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="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_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-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>22
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446484695328">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Summary of Significant Accounting Policies</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 style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 3. Summary of Significant Accounting Policies</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Significant Accounting Policies &#160;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">There were no material changes in our significant accounting policies during the six months ended June 30, 2024. See Note 3 &#8211; &#8220;Summary of Significant Accounting Policies&#8221; to the consolidated financial statements included in our Annual Report on Form 10-K for the year ended December 31, 2023, for information regarding our significant accounting policies. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Accounting Pronouncement Not Yet Adopted</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">In November 2023, the Financial Accounting Standards Board (&#8220;FASB&#8221;) issued Accounting Standards Update (&#8220;ASU&#8221;) No. 2023-07, &#8220;Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures&#8221; which requires entities to enhance disclosures around segment reporting. The guidance is effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024, with early adoption permitted. The Company is currently evaluating the effect this standard will have on its consolidated financial statements and related disclosures.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">In December 2023, the FASB issued ASU No. 2023-09, &#8220;Income Taxes (Topic 740): Improvements to Income Tax Disclosures&#8221; which requires entities to enhance disclosures around income taxes. The guidance is effective for annual periods beginning after December 15, 2024, with early adoption permitted. The Company is currently evaluating the effect this standard will have on its consolidated financial statements and related disclosures</span><span style="font-family:'Arial','Helvetica','sans-serif';">.</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> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 235<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/235/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446482411072">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventories</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">Inventories</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 4. Inventories</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Inventories consisted of the following:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:40.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:25.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:25.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:40.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:27.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At June&#160;30,&#160;2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:27.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At December&#160;31,&#160;2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Finished goods</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 6,365</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 7,979</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Component parts and work-in-process</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 12,481</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 14,548</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total inventories</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 18,846</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 22,527</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</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_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/330/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446484958064">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets</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 style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 5. Goodwill and Intangible Assets</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;padding-left:10pt;text-align:justify;text-indent:-10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Goodwill</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">In the third quarter of fiscal 2021, we completed the AffloVest Acquisition. The purchase price of the AffloVest product line exceeded the net acquisition-date estimated fair value amounts of the identifiable assets acquired and the liabilities assumed by </span><span style="font-family:'Arial','Helvetica','sans-serif';">$31.1</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million, which was assigned to goodwill.&#160;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Intangible Assets</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our patents and other intangible assets are summarized as follows:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:48.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At June&#160;30,&#160;2024</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Carrying</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Net</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Period</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amount</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Definite-lived intangible assets:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Patents</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">12 years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,060</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 290</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 770</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Defensive intangible assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">1 year</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,125</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 993</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 132</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Customer accounts</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 125</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 125</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Customer relationships</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">10 years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 31,000</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 6,704</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 24,296</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Developed technology</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">8 years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 13,000</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,322</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 9,678</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Subtotal</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 46,310</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 11,434</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 34,876</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Unamortized intangible assets:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Tradenames</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 9,500</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 9,500</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Patents pending</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 507</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 507</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total intangible assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 56,317</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 11,434</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 44,883</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="display:inline-block;width:205.5pt;"></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:48.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At December&#160;31,&#160;2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Carrying</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Net</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Period</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amount</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Definite-lived intangible assets:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Patents</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">12 years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,018</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 248</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 770</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Defensive intangible assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">1 year</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,125</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 920</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 205</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Customer accounts</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 125</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 125</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Customer relationships</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">11 years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 31,000</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 5,511</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 25,489</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Developed technology</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">9 years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 13,000</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,731</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 10,269</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Subtotal</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 46,268</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 9,535</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 36,733</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Unamortized intangible assets:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Tradenames</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 9,500</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 9,500</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Patents pending</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 491</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 491</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total intangible assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 56,259</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 9,535</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 46,724</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Amortization expense was </span><span style="font-family:'Arial','Helvetica','sans-serif';">$1.0</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for each of the three months ended June 30, 2024 and 2023, and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$1.9</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for each of the six months ended June 30, 2024 and 2023, of which </span><span style="font-family:'Arial','Helvetica','sans-serif';">$0.3</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million in each of the three months ended June 30, 2024 and 2023, and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$0.6</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million in each of the six months ended June 30, 2024 and 2023, were recorded in cost of sales revenue. Future amortization expenses are expected as follows:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2024 (July 1 - December 31)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;&#160;&#160;&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,899</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2025</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,708</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2026</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,643</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2027</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,635</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2028</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,632</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Thereafter</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 18,359</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 34,876</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:14pt 0pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">In the third quarter of 2023, we performed our annual goodwill impairment test utilizing both the qualitative and quantitative approach described in FASB ASU No. 2021-03, &#8220;Intangibles&#8212;Goodwill and Other (Topic 350) &#8211; Accounting Alternative for Evaluating Triggering Events.&#8221; Based on the testing using the qualitative approach, it was determined that it was not more likely than not that the fair value of the reporting </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">unit was less than the carrying value. As a result, it was not deemed necessary to proceed to the quantitative test and </span><span style="font-family:'Arial','Helvetica','sans-serif';">no</span><span style="font-family:'Arial','Helvetica','sans-serif';"> impairment was recognized.</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://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/350-30/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/350-20/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>25
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446486351696">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Expenses<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrentAbstract', window );"><strong>Accrued Expenses</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_tcmd_AccruedExpensesDisclosureCurrentTextBlock', window );">Accrued Expenses</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 6. Accrued Expenses</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Accrued expenses consisted of the following:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:34.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:30.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At June&#160;30,&#160;2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:30.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At December&#160;31,&#160;2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Warranty</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,131</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,357</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Legal and consulting</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,161</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 611</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">In-transit inventory</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,102</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 401</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Travel</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 933</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,038</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Clinical studies</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 339</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 363</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales and use tax</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 108</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 183</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Other</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 928</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 951</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 6,702</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 5,904</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</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_tcmd_AccruedExpensesDisclosureCurrentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 accrued expenses that are classified as current 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tcmd_AccruedExpensesDisclosureCurrentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_AccruedLiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccruedLiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-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>26
<FILENAME>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446483431408">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Warranty Reserves<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyDisclosureAbstract', window );"><strong>Warranty Reserves</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_ProductWarrantyDisclosureTextBlock', window );">Warranty Reserves</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note&#160;7. Warranty Reserves</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The activity in the warranty reserve during and as of the end of the reporting periods presented was as follows:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended </b></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June&#160;30,&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June&#160;30,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Beginning balance</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,836</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 4,000</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 4,038</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 4,212</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Warranty provision</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 902</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,026</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,742</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,900</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Processed warranty claims</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (1,046)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (1,198)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (2,088)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (2,284)</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Ending balance</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,692</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,828</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,692</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,828</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#ff0000;font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#ff0000;font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Accrued warranty reserve, current</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,131</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,871</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,131</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,871</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Accrued warranty reserve, non-current</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,561</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,957</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,561</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,957</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total accrued warranty reserve</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,692</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,828</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,692</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,828</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;visibility:hidden;">&#8203;</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_ProductWarrantyDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 standard and extended product warranties and other product guarantee contracts, including a tabular reconciliation of the changes in the guarantor's aggregate product warranty liability for the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-4<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-4<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyDisclosureTextBlock</td>
</tr>
<tr>
<td style="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_StandardProductWarrantyDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StandardProductWarrantyDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446486356464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Credit Agreement<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Credit Agreement</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_DebtDisclosureTextBlock', window );">Credit Agreement</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 8. Credit Agreement </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:27pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On April 30, 2021, we entered into an Amended and Restated Credit Agreement (the &#8220;Restated Credit Agreement&#8221;) with the lenders from time to time party thereto, and Wells Fargo Bank, National Association, as Administrative Agent. The Restated Credit Agreement amended and restated in its entirety our prior credit agreement.</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:12pt;"> </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On September 8, 2021, we entered into a First Amendment Agreement (the &#8220;Amendment&#8221;), which amended the Restated Credit Agreement (as amended by the Amendment, the &#8220;Credit Agreement&#8221;) with the lenders from time to time party thereto and Wells Fargo Bank, National Association, as administrative agent. The Amendment, among other things, added a </span><span style="font-family:'Arial','Helvetica','sans-serif';">$30.0</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million incremental term loan to the </span><span style="font-family:'Arial','Helvetica','sans-serif';">$25.0</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million revolving credit facility provided by the Restated Credit Agreement. The term loan is reflected on our condensed consolidated financial statements as a note payable. The Credit Agreement provides that, subject to satisfaction of certain conditions, we may increase the amount of the revolving loans available under the Credit Agreement and/or add one or more term loan facilities in an amount not to exceed </span><span style="font-family:'Arial','Helvetica','sans-serif';">$25.0</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million in the aggregate, such that the total aggregate principal amount of loans available under the Credit Agreement (including under the revolving credit facility) does not exceed </span><span style="font-family:'Arial','Helvetica','sans-serif';">$80.0</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;">&#160;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On September 8, 2021, in connection with the closing of the AffloVest Acquisition, we borrowed the </span><span style="font-family:'Arial','Helvetica','sans-serif';">$30.0</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million term loan and utilized that borrowing, together with a draw of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$25.0</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million under the revolving credit facility and cash on hand, to fund the purchase price.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On February 22, 2022, we entered into a Second Amendment Agreement (the &#8220;Second Amendment&#8221;), which further amended the Credit Agreement. The Second Amendment modified the maximum leverage ratio, the minimum fixed charge coverage ratio and the minimum consolidated EBITDA covenants under the Credit Agreement, and added a minimum liquidity covenant, through the quarter ended June 30, 2023. The Second Amendment also increased the applicable margin for LIBOR rate loans under the Credit Agreement during the period commencing on the date of the Second Amendment and ending on the last day of the fiscal quarter ending June 30, 2023. Pursuant to the Second Amendment, we made a mandatory principal prepayment of the term loan of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$3.0</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million on February 22, 2022.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On June 21, 2023, we entered into a Third Amendment Agreement (the &#8220;Third Amendment&#8221;) that replaced the interest rate benchmark under the Credit Agreement from LIBOR to the term Secured Overnight Financing Rate (&#8220;SOFR&#8221;). All tenors of term SOFR are subject to a credit spread adjustment of </span><span style="font-family:'Arial','Helvetica','sans-serif';">0.10%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> (&#8220;Adjusted Term SOFR&#8221;).</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Following the Third Amendment, the term loan and amounts drawn under the revolving credit facility bear interest, at our option, at a rate equal to (a) the highest of (i) the prime rate, (ii) the federal funds rate plus </span><span style="font-family:'Arial','Helvetica','sans-serif';">0.50%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> and (iii) Adjusted Term SOFR for a one-month tenor plus </span><span style="font-family:'Arial','Helvetica','sans-serif';">1%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> (the &#8220;Base Rate&#8221;) plus an applicable margin or (b) Adjusted Term SOFR for an interest period of one, three or six months, at our option, plus the applicable margin. The applicable margin is </span><span style="font-family:'Arial','Helvetica','sans-serif';">0.75%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';">2.25%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> on loans bearing interest at the Base Rate and </span><span style="font-family:'Arial','Helvetica','sans-serif';">1.75%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';">3.25%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> on loans bearing interest at Adjusted Term SOFR, in each case depending on our consolidated total leverage ratio; except that, pursuant to the Second Amendment and the Third Amendment, during the period commencing on February 22, 2022 and ending on the last day of the fiscal quarter ending June 30, 2023, the applicable margin for LIBOR rate loans and Adjusted Term SOFR loans, as applicable, was </span><span style="font-family:'Arial','Helvetica','sans-serif';">3.50%</span><span style="font-family:'Arial','Helvetica','sans-serif';">. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On August 1, 2023, we entered into a Fourth Amendment Agreement (the &#8220;Fourth Amendment&#8221;), which further amended the Credit Agreement. The Fourth Amendment, among other things, decreased the commitment fees payable under the revolving credit facility under the Credit Agreement such that the undrawn portions of the revolving credit facility are subject to an unused line fee at a rate per annum from </span><span style="font-family:'Arial','Helvetica','sans-serif';">0.125%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';">0.200%</span><span style="font-family:'Arial','Helvetica','sans-serif';">, depending on our consolidated leverage ratio, and eliminated the language providing that the applicable margin for Adjusted Term SOFR loans was </span><span style="font-family:'Arial','Helvetica','sans-serif';">3.50%</span><span style="font-family:'Arial','Helvetica','sans-serif';">, such that the interest rates are in effect as set forth in the above paragraph. The Fourth Amendment also eliminated the liquidity financial covenant and modified the remaining financial covenants to reflect the termination of the temporary covenant relief period that was in place until June 30, 2023 pursuant to the Second Amendment, such that the financial covenants now include a maximum consolidated total leverage ratio covenant, a minimum consolidated EBITDA covenant and a minimum fixed charge coverage ratio covenant. In addition, the Fourth Amendment provided for an </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">additional term loan in the amount of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$8.25</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million, which we used for a paydown of the revolving credit facility. The Fourth Amendment also extended the maturity date of the term loans and revolving credit facility under the Credit Agreement from September 8, 2024, to August 1, 2026.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';background:#ffffff;">On December 21, 2023, we made a payment of </span><span style="font-family:'Arial','Helvetica','sans-serif';background:#ffffff;">$16.8</span><span style="font-family:'Arial','Helvetica','sans-serif';background:#ffffff;">&#160;million to repay in full the outstanding balance on the revolving credit facility.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">As of June 30, 2024, we had outstanding borrowings of </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">$27.8</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> million under the Credit Agreement, comprised entirely of the term loan. At June 30, 2024,&#160;all outstanding borrowings were subject to interest at a rate calculated at Adjusted Term SOFR plus an applicable margin, for an interest rate of </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">7.18%</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">. The principal of the term loan is required to be repaid in </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">quarterly</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> installments of </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">$750,000</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">. Maturities of the term loan for the next three years as of June 30, 2024, were as follows:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:66.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:29.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amount</b></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2024 (July 1 - December 31)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,500</span></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2025</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,000</span></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2026</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 23,250</span></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 27,750</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Less: Deferred financing fees</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (96)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net Note Payable</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 27,654</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Less: Current portion of note payable</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (2,956)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Non-current portion of note payable</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 24,698</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our obligations under the Credit Agreement are secured by a security interest in substantially all of our and our subsidiary&#8217;s assets and are also guaranteed by our subsidiary. As of June 30, 2024, the Credit Agreement contained a number of restrictions and covenants, including that we maintain compliance with a maximum consolidated total leverage ratio, a minimum fixed charge coverage ratio and a minimum consolidated EBITDA covenant. As of June 30, 2024, we were in compliance with all covenants under the Credit Agreement.</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_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_DebtDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 470<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/470/tableOfContent<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1C<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1C<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1C<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446481015264">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies</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 style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note&#160;9. Commitments and Contingencies</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:10pt;text-align:justify;text-indent:-10pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Lease Obligations</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We lease property and equipment under operating leases, typically with terms greater than </span><span style="font-family:'Arial','Helvetica','sans-serif';">12 months</span><span style="font-family:'Arial','Helvetica','sans-serif';">, and determine if an arrangement contains a lease at inception. In general, an arrangement contains a lease if there is an identified asset and we have the right to direct the use of and obtain substantially all of the economic benefit from the use of the identified asset. We record an operating lease liability at the present value of lease payments over the lease term on the commencement date. The related right of use (&#8220;ROU&#8221;) operating lease asset reflects rental escalation clauses, as well as renewal options and/or termination options. The exercise of lease renewal and/or termination options are at our discretion and are included in the determination of the lease term and lease payment obligations when it is deemed reasonably certain that the option will be exercised. When available, we use the rate implicit in the lease to discount lease payments to present value; however, certain leases do not provide a readily determinable implicit rate. Therefore, we must estimate our incremental borrowing rate to discount the lease payments based on information available at lease commencement.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We classify our leases as buildings, vehicles or computer and office equipment and do not separate lease and non-lease components of contracts for any of the aforementioned classifications. In accordance with applicable guidance, we do not record leases with terms that are less than one year on the Condensed Consolidated Balance Sheets.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">None of our lease agreements contain material restrictive covenants or residual value guarantees.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">Buildings</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We lease certain office and warehouse space at various locations in the United States where we provide services. These leases are typically greater than one year with fixed, escalating rents over the noncancelable terms and, therefore, ROU operating lease assets and operating lease liabilities are recorded on the Condensed Consolidated Balance Sheets, with rent expense recognized on a straight-line basis over the term of the lease. The remaining lease terms vary from approximately </span><span style="-sec-ix-hidden:Hidden_kHfwq-3Kx0yOTQftBwCcuA;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">one</span></span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';">seven years</span><span style="font-family:'Arial','Helvetica','sans-serif';"> as of June 30, 2024.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We entered into a lease (&#8220;initial lease&#8221;) in October 2018, for approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';">80,000</span><span style="font-family:'Arial','Helvetica','sans-serif';"> square feet of office space for our new corporate headquarters in Minneapolis, Minnesota. In December 2018, we amended the initial lease to add approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';">29,000</span><span style="font-family:'Arial','Helvetica','sans-serif';"> square feet of additional office space, which is accounted for as a separate lease (&#8220;second lease&#8221;) in accordance with ASU No. 2016-02, &#8220;Leases&#8221; (Topic 842) (&#8220;ASC 842&#8221;). In December 2019, we further amended the lease which extended the expiration date of the initial lease, extended the expiration date of and added approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';">4,000</span><span style="font-family:'Arial','Helvetica','sans-serif';"> square feet to the second lease, as well as added approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';">37,000</span><span style="font-family:'Arial','Helvetica','sans-serif';"> square feet of additional office space, accounted for as a separate lease (&#8220;third lease&#8221;) in accordance with ASC 842. The portion of the space covered under the initial lease was placed in service in September 2019. The portion of the space covered under the second lease commenced in September 2020. Finally, the portion of the space covered under the third lease commenced in September 2021. The three portions were recognized as an operating lease and included in the ROU operating lease assets and operating lease liabilities on the Condensed Consolidated Balance Sheets.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;">Computer and Office Equipment</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We also have operating lease agreements for certain computer and office equipment. The remaining lease terms as of June 30, 2024, ranged from less than </span><span style="font-family:'Arial','Helvetica','sans-serif';">one year</span><span style="font-family:'Arial','Helvetica','sans-serif';"> to approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';">four years</span><span style="font-family:'Arial','Helvetica','sans-serif';"> with fixed monthly payments that are included in the ROU operating lease assets and operating lease liabilities. The leases provide an option to purchase the related equipment at fair market value at the end of the lease. The leases will automatically </span><span style="font-family:'Arial','Helvetica','sans-serif';">renew</span><span style="font-family:'Arial','Helvetica','sans-serif';"> as a month-to-month rental at the end of the lease if the equipment is not purchased or returned.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Lease Position, Undiscounted Cash Flow and Supplemental Information</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The table below presents information related to our ROU operating lease assets and operating lease liabilities that we have recorded:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:17.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At June&#160;30,&#160;2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:21.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At December&#160;31,&#160;2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="-sec-ix-hidden:Hidden_XGg9ZJfBzkKoHvrqqrYL-A;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">Right of use operating lease assets</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 17,828</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 19,128</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Operating lease liabilities:</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="-sec-ix-hidden:Hidden_RYmMhvoXpkm2HlfUhjWQpw;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">Current</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,799</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,807</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="-sec-ix-hidden:Hidden_OCBgoeuof0yCuc0I2N4Lzw;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">Non-current</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 17,142</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 18,436</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 19,941</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 21,243</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;"><span style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Operating leases: </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Weighted average remaining lease term</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">6.3</span><span style="font-family:'Arial','Helvetica','sans-serif';"> years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">6.7</span><span style="font-family:'Arial','Helvetica','sans-serif';"> years</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Weighted average discount rate</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">4.3%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">4.3%</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;vertical-align:top;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:41.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;width:17.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;width:21.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Supplemental cash flow information for our operating leases:</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cash paid for operating lease liabilities</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,743</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,710</span></p></td></tr><tr><td style="vertical-align:bottom;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Non-cash right of use assets obtained in exchange for new operating lease obligations</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The table below reconciles the undiscounted cash flows for the periods presented to the operating lease liabilities recorded on the Condensed Consolidated Balance Sheet for the periods presented:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2024 (July 1 - December 31)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">  </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,791</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2025</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,645</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2026</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,716</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2027</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,210</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2028</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,185</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Thereafter</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 6,943</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total minimum lease payments</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 22,490</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Less: Amount of lease payments representing interest</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (2,549)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Present value of future minimum lease payments</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 19,941</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Less: Current obligations under operating lease liabilities</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (2,799)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Non-current obligations under operating lease liabilities</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 17,142</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Operating lease costs were </span><span style="font-family:'Arial','Helvetica','sans-serif';">$0.9</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for each of the three months ended June 30, 2024 and 2023. Operating lease costs were </span><span style="font-family:'Arial','Helvetica','sans-serif';">$1.8</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for each of the six months ended June 30, 2024 and 2023. &#160;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;padding-left:10.1pt;text-align:justify;text-indent:-10.1pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Major Vendors</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We had purchases from </span><span style="font-family:'Arial','Helvetica','sans-serif';">one</span><span style="font-family:'Arial','Helvetica','sans-serif';"> vendor that accounted for </span><span style="font-family:'Arial','Helvetica','sans-serif';">17%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of our total purchases for the three months ended June 30, 2024, and purchases from </span><span style="font-family:'Arial','Helvetica','sans-serif';">one</span><span style="font-family:'Arial','Helvetica','sans-serif';"> vendor that accounted for </span><span style="font-family:'Arial','Helvetica','sans-serif';">20%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of our total purchases for the six months ended June 30, 2024. We had purchases from </span><span style="font-family:'Arial','Helvetica','sans-serif';">two</span><span style="font-family:'Arial','Helvetica','sans-serif';"> vendors that accounted for </span><span style="font-family:'Arial','Helvetica','sans-serif';">30%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of our total purchases for the three months ended June 30, 2023, and purchases from </span><span style="font-family:'Arial','Helvetica','sans-serif';">one</span><span style="font-family:'Arial','Helvetica','sans-serif';"> vendor that accounted for </span><span style="font-family:'Arial','Helvetica','sans-serif';">24%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of our total purchases for the six months ended June 30, 2023. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;padding-left:10.1pt;text-align:justify;text-indent:-10.1pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Purchase Commitments</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We issued purchase orders prior to June 30, 2024, totaling </span><span style="font-family:'Arial','Helvetica','sans-serif';">$28.8</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for goods that we expect to receive within the next year.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Retirement Plan</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We maintain a 401(k) retirement plan for our employees in which eligible employees can contribute a percentage of their pre-tax compensation. We recorded an expense related to our discretionary contributions to the 401(k) plan of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$0.4</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$0.3</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the three months ended June 30, 2024 and 2023, respectively, and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$1.1</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$0.7</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the six months ended June 30, 2024 and 2023, respectively.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Legal Proceedings</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">F</span><span style="font-family:'Arial','Helvetica','sans-serif';">rom time to time, we are subject to various claims and legal proceedings arising in the ordinary course of business. Regardless of outcome, litigation can have an adverse impact on us because of defense and settlement costs, diversion of management resources and other factors.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On May 24, 2022, a stockholder derivative lawsuit was filed in the United States District Court for the District of Minnesota, purportedly on behalf of the Company against certain of our present and former officers and directors and the Company (as a nominal defendant), captioned Jack Weaver v. Moen, et al., File No. 0:22-cv-01403-NEB-BRT (the &#8220;Weaver Lawsuit&#8221;). The Weaver Lawsuit generally arises out of the same subject matter as a previously settled securities class action captioned Brian Mart v. Tactile Sys. Tech., Inc., et al., File No. 0:20-cv-02074-NEB-BRT (D. Minn.) (the &#8220;Mart Lawsuit&#8221;), which alleged, inter alia, that we and </span><span style="font-family:'Arial','Helvetica','sans-serif';">eight</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of our former officers and directors made materially false or misleading statements about our business, operational and compliance policies. The Weaver Lawsuit alleges the following claims under the Exchange Act and common law: (1) that the director defendants made materially false or misleading public statements in proxy statements in violation of Section 14(a) of the Exchange Act; (2) that the director defendants&#8217; stock and option awards should be rescinded under Section 29(b) of the Exchange Act; (3) that the officer defendants&#8217; employment contract compensation should be rescinded under Section 29(b) of the Exchange Act; (4) that certain officer defendants are liable for contribution arising out of any liability incurred in the Mart Lawsuit, under Sections 10(b) and 21D of the Exchange Act; (5) that the individual defendants breached their fiduciary duties; and (6) that the individual defendants were unjustly enriched. The Weaver Lawsuit seeks unspecified damages. In August 2022, the matter was transferred to the United States District Court for the District of Delaware by order granting the Parties Stipulation to Transfer. On February 10, 2023, we filed a motion to dismiss the action. The plaintiff filed an Amended Complaint on March 3, 2023. On March 31, 2023, we filed a motion to dismiss the Amended Complaint. On July 31, 2023, the plaintiff filed a Joint Notice of Preliminary Settlement indicating that the parties had reached a non-binding settlement-in-principal on most of the material terms that would resolve all claims between the parties and requested that the Court temporarily stay all deadlines, hearings, and conferences while the parties continued to finalize settlement</span><span style="font-family:'Arial','Helvetica','sans-serif';">. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On June 6, 2024, we entered into a Stipulation of Settlement in the Weaver Lawsuit. On June 7, 2024, the plaintiff filed an unopposed motion for preliminary approval of the settlement. &#160;On June 27, 2024, the Court entered an order granting the motion for preliminary approval of the settlement. &#160;The Court has scheduled a settlement hearing for August 28, 2024 to consider whether to grant final approval to the settlement. Pursuant to the settlement, we will adopt, implement and maintain certain corporate governance reforms and have agreed to pay approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';">$0.5</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million in fees and expenses related to this lawsuit. The settlement does not constitute an admission of liability or wrongdoing by us or any of our current or former directors or officers.</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://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 405<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/405-30/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482648/440-10-50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/450/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 440<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478522/954-440-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482648/440-10-50-4<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 440<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/440/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>29
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446484806384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteAbstract', window );"><strong>Stockholders' Equity</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_ShareholdersEquityAndShareBasedPaymentsTextBlock', window );">Stockholders' Equity</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note&#160;10. Stockholders' Equity</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;padding-left:10.1pt;text-align:justify;text-indent:-10.1pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Stock-Based Compensation</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our 2016 Equity Incentive Plan (the &#8220;2016 Plan&#8221;) authorizes us to grant stock options, stock appreciation rights, restricted stock, stock units and other stock-based awards to employees, non-employee directors and certain consultants and advisors. There were up to </span><span style="font-family:'Arial','Helvetica','sans-serif';">4,800,000</span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares of our common stock initially reserved for issuance pursuant to the 2016 Plan. The 2016 Plan provides that the number of shares reserved and available for issuance under the 2016 Plan will automatically increase annually on January 1 of each calendar year, commencing in 2017 and ending on and including January 1, 2026, by an amount equal to the lesser of: (a) </span><span style="font-family:'Arial','Helvetica','sans-serif';">5%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of the number of common shares of stock outstanding as of December 31 of the immediately preceding calendar year, or (b) </span><span style="font-family:'Arial','Helvetica','sans-serif';">2,500,000</span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares; provided, however, that our Board of Directors may determine that any annual increase be a lesser number. In addition, all awards granted under our 2007 Omnibus </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Stock Plan and our 2003 Stock Option Plan that were outstanding when the 2016 Plan became effective and that are forfeited, expired, cancelled, settled for cash or otherwise not issued, will become available for issuance under the 2016 Plan. Pursuant to the automatic increase feature of the 2016 Plan, </span><span style="font-family:'Arial','Helvetica','sans-serif';">1,180,019</span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares were added as available for issuance thereunder on January 1, 2024. Our Board of Directors exercised its prerogative to forego the automatic increase on January 1, 2023. As of June 30, 2024, </span><span style="font-family:'Arial','Helvetica','sans-serif';">6,615,454</span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares were available for future grant pursuant to the 2016 Plan.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Upon adoption and approval of the 2016 Plan, all of our previous equity incentive compensation plans were terminated. However, existing awards under those plans continue to vest in accordance with the original vesting schedules and will expire at the end of their original terms.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We recorded stock-based compensation expense of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$1.9</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$1.8</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the three</span><span style="font-family:'Arial','Helvetica','sans-serif';"> </span><span style="font-family:'Arial','Helvetica','sans-serif';">months ended June 30, 2024 and 2023, respectively and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$3.9</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$3.8</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the six months ended June 30, 2024 and 2023, respectively. This expense was allocated as follows:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended </b></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June&#160;30,&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June&#160;30,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cost of revenue</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 103</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 121</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 186</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 224</span></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales and marketing expenses</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 606</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 810</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,344</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,562</span></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Research and development expenses</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 48</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 44</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 81</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 93</span></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Reimbursement, general and administrative expenses</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,103</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 833</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,288</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,952</span></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total stock-based compensation expense</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,860</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,808</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,899</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,831</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Stock Options</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Stock options issued to participants other than non-employees typically vest over </span><span style="-sec-ix-hidden:Hidden_kLboFkrwmU241zeI964eiA;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">three</span></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> or </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">four years</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> and typically have a contractual term of </span><span style="-sec-ix-hidden:Hidden_y4t_8y311Ue2o7Uk2kMnjA;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">seven</span></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> or </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">ten years</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">. Stock-based compensation expense included in the Condensed Consolidated Statements of Operations for stock options was </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">$0.1</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">$0.2</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> million for the three months ended June 30, 2024 and 2023, respectively and </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">$0.2</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">$0.5</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> million for the six months ended June 30, 2024 and 2023, respectively. At June 30, 2024, there was approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">$0.1</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> million of total unrecognized pre-tax stock option expense under our equity compensation plans, which is expected to be recognized on a straight-line basis over a weighted-average period of </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">1.0</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> years.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our stock option activity for the six months ended June 30, 2024, was as follows:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:-0.08757782%;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Aggregate</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Exercise&#160;Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Intrinsic</b></p></td></tr><tr><td style="vertical-align:bottom;width:37.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands except options and per share data)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Outstanding</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Per Share </b><sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Contractual Life</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Value </b><sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(2)</sup></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at December 31, 2023</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 429,960</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 40.74</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">3.8</span><span style="font-family:'Arial','Helvetica','sans-serif';"> years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 223</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Exercised</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (1,153)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1.35</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 14</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cancelled/Expired</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (12,995)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 41.17</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at June 30, 2024</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 415,812</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 40.83</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">3.3</span><span style="font-family:'Arial','Helvetica','sans-serif';"> years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 125</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Options exercisable at June&#160;30,&#160;2024</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 392,239</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 42.19</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">3.2</span><span style="font-family:'Arial','Helvetica','sans-serif';"> years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 65</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;text-decoration-line:none;text-transform:none;vertical-align:baseline;white-space:nowrap;width:18pt;padding:0pt 0pt 6pt 0pt;">(1)</td><td style="padding:0pt 0pt 6pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;">The exercise price of each option granted during the period shown was equal to the market price of the underlying stock on the date of grant.</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;text-decoration-line:none;text-transform:none;vertical-align:baseline;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;">(2)</td><td style="padding:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;">The aggregate intrinsic value of options exercised represents the difference between the exercise price of the option and the closing stock price of our common stock on the date of exercise. The aggregate intrinsic value of options outstanding represents the difference between the exercise price of the option and the closing stock price of our common stock on the last trading day of the period.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Options exercisable of </span><span style="font-family:'Arial','Helvetica','sans-serif';">435,559</span><span style="font-family:'Arial','Helvetica','sans-serif';"> as of June 30, 2023, had a weighted-average exercise price of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$44.67</span><span style="font-family:'Arial','Helvetica','sans-serif';"> per share.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Time-Based Restricted Stock Units</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We have granted time-based restricted stock units to certain participants under the 2016 Plan that are stock-settled with common shares. </span><span style="font-family:'Arial','Helvetica','sans-serif';">Time-based restricted stock units granted under the 2016 Plan vest over </span><span style="-sec-ix-hidden:Hidden_eZ3xB74RXU6NziO2vey1sA;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">one</span></span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';">three years</span><span style="font-family:'Arial','Helvetica','sans-serif';">. Stock-based compensation expense included in the Condensed Consolidated Statements of Operations for time-based restricted stock units was </span><span style="font-family:'Arial','Helvetica','sans-serif';">$1.5</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$1.3</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the three months ended June 30, 2024 and 2023, respectively, and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$2.9</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$2.6</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the six months ended June 30, 2024 and 2023, respectively. At June 30, 2024, there was approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';">$8.3</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million of total unrecognized pre-tax compensation expense related to outstanding time-based restricted stock units that is expected to be recognized over a weighted-average period of </span><span style="-sec-ix-hidden:Hidden_qxZrAitPFUeRdDk6Iart9A;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">1.9</span></span><span style="font-family:'Arial','Helvetica','sans-serif';"> years.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our time-based restricted stock unit activity for the six months ended June 30, 2024, was as follows:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average Grant</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Aggregate</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Units</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Date Fair Value</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Intrinsic</b></p></td></tr><tr><td style="vertical-align:bottom;width:46.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands except unit and per unit data)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Outstanding</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Per Unit</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">Value </b><sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at December 31, 2023</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 589,142</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 16.35</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,425</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Granted</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 464,145</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 13.87</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Vested</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (224,149)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 18.02</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cancelled</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (107,363)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 14.62</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at June 30, 2024</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 721,775</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 14.50</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,618</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 6pt 0pt;">(1)</td><td style="padding:0pt 0pt 6pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;">The aggregate intrinsic value of restricted stock units outstanding was based on our closing stock price on the last trading day of the period. </span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Performance-Based Restricted Stock Units</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We have granted performance-based restricted stock units (&#8220;PSUs&#8221;) to certain participants under the 2016 Plan. These PSUs have both performance-based and time-based vesting features. The PSUs granted in 2023 have </span><span style="font-family:'Arial','Helvetica','sans-serif';">three</span><span style="font-family:'Arial','Helvetica','sans-serif';"> separate performance periods, and </span><span style="-sec-ix-hidden:Hidden_uAKG2g7mZk--CJFl0zmvdg;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">one-third</span></span><span style="font-family:'Arial','Helvetica','sans-serif';"> of each grant will be earned if and to the extent performance goals based on revenue change and adjusted EBITDA margin are achieved in each of 2023 and 2024 (ranging from </span><span style="font-family:'Arial','Helvetica','sans-serif';">25%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';">175%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of target), and </span><span style="-sec-ix-hidden:Hidden_Dc9cTpTp0kahwn8Wwp10OQ;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">one-third</span></span><span style="font-family:'Arial','Helvetica','sans-serif';"> will be earned if and to the extent performance goals based on revenue change and adjusted EBITDA change are achieved in 2025 (ranging from </span><span style="font-family:'Arial','Helvetica','sans-serif';">25%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';">175%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of target). The PSUs granted in 2024 have </span><span style="font-family:'Arial','Helvetica','sans-serif';">three</span><span style="font-family:'Arial','Helvetica','sans-serif';"> separate performance periods, and </span><span style="-sec-ix-hidden:Hidden_zYXFcnFJn0-ybR_mTIZHHw;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">one-third</span></span><span style="font-family:'Arial','Helvetica','sans-serif';"> of each grant will be earned if and to the extent performance goals based on revenue change and adjusted EBITDA margin are achieved in 2024 (ranging from </span><span style="font-family:'Arial','Helvetica','sans-serif';">25%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';">175%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of target), </span><span style="-sec-ix-hidden:Hidden_FQbZztpU1EeZnyJ6p9PWGg;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">one-third</span></span><span style="font-family:'Arial','Helvetica','sans-serif';"> will be earned if and to the extent performance goals based on revenue change and adjusted EBITDA change are achieved in 2025 (ranging from </span><span style="font-family:'Arial','Helvetica','sans-serif';">25%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';">175%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of target), and </span><span style="-sec-ix-hidden:Hidden_4ZqkYWgRrk6GX2MYoeozQA;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">one-third</span></span><span style="font-family:'Arial','Helvetica','sans-serif';"> will be earned if and to the extent performance goals to be established are achieved in 2026. All earned and vested PSUs will be settled in shares of common stock.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Stock-based compensation expense recognized for PSUs was </span><span style="font-family:'Arial','Helvetica','sans-serif';">$0.2</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$0.1</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the three months ended </span><span style="font-family:'Arial','Helvetica','sans-serif';">June 30, 2024 and 2023, respectively, and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$0.6</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$0.3</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the six months ended June 30, 2024 and 2023, respectively. </span><span style="font-family:'Arial','Helvetica','sans-serif';">At June 30, 2024, there was approximately </span><span style="font-family:'Arial','Helvetica','sans-serif';">$1.5</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million of total unrecognized pre-tax compensation expense related to outstanding PSUs that is expected to be recognized over a weighted average period of </span><span style="font-family:'Arial','Helvetica','sans-serif';">2.2</span><span style="font-family:'Arial','Helvetica','sans-serif';"> years.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our PSU activity for the six months ended June 30, 2024, was as follows:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average Grant</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Aggregate</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">PSUs</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Date Fair Value</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Intrinsic</b></p></td></tr><tr><td style="vertical-align:bottom;width:44.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands except unit and per unit data)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Outstanding</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Per Unit</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">Value </b><sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at December 31, 2023</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 198,232</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 18.93</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,785</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Granted</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 160,659</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 13.88</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Vested</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (44,162)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 27.31</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cancelled</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (104,913)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 14.14</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at June 30, 2024</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 209,816</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 15.70</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,505</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;">(1)</td><td style="padding:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;">The aggregate intrinsic value of PSUs outstanding was based on our closing stock price on the last trading day of the period. </span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Employee Stock Purchase Plan</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our employee stock purchase plan (&#8220;ESPP&#8221;), which was approved by our Board of Directors on April 27, 2016, and by our stockholders on June 20, 2016, allows participating employees to purchase shares of our common stock at a discount through payroll deductions. The ESPP is available to all of our employees and employees of participating subsidiaries. Participating employees may purchase common stock, on a voluntary after-tax basis, at a price equal to </span><span style="font-family:'Arial','Helvetica','sans-serif';">85%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of the lower of the closing market price per share of our common stock on the first or last trading day of each stock purchase period. The ESPP provides for </span><span style="font-family:'Arial','Helvetica','sans-serif';">six-month</span><span style="font-family:'Arial','Helvetica','sans-serif';"> purchase periods, beginning on May 16 and November 16 of each calendar year. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">A total of </span><span style="font-family:'Arial','Helvetica','sans-serif';">1,600,000</span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares of common stock was initially reserved for issuance under the ESPP. This share reserve will automatically be supplemented each January 1, commencing in 2017 and ending on and including January 1, 2026, by an amount equal to the least of (a) </span><span style="font-family:'Arial','Helvetica','sans-serif';">1%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> of the shares of our common stock outstanding on the immediately preceding December 31, (b) </span><span style="font-family:'Arial','Helvetica','sans-serif';">500,000</span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares or (c) such lesser amount as our Board of Directors may determine. Pursuant to the automatic increase feature of the ESPP, </span><span style="font-family:'Arial','Helvetica','sans-serif';">236,003</span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares were added as available for issuance thereunder on January 1, 2024. Our Board of Directors exercised its prerogative to forego the automatic increase on January 1, 2023. As of June 30, 2024, </span><span style="font-family:'Arial','Helvetica','sans-serif';">1,497,964</span><span style="font-family:'Arial','Helvetica','sans-serif';"> shares were available for future issuance under the ESPP. We recognized stock-based compensation expense associated with the ESPP of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$0.1</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for each of the three months ended June 30, 2024 and 2023, and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$0.2</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$0.3</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the six months ended June 30, 2024 and 2023, respectively.</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_ShareholdersEquityAndShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and share-based payment arrangement. Includes, but is not limited to, disclosure of policy and terms of share-based payment arrangement, deferred compensation arrangement, and employee stock purchase plan (ESPP).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/505/tableOfContent<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 718<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/718/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="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_StockholdersEquityNoteAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StockholdersEquityNoteAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446484803680">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">Revenue</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 11. Revenue</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We derive our revenue from the sale and rental of our products to our customers in the United States. The following table presents our revenue, inclusive of sales and rental revenue, disaggregated by product line</span><span style="font-family:'Arial','Helvetica','sans-serif';">:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Lymphedema products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 64,683</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 59,999</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 116,996</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 109,751</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Airway clearance products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,535</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,340</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 17,310</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 17,434</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 73,218</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 68,339</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 134,306</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 127,185</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Percentage of total revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Lymphedema products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">88%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">88%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">87%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">86%</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Airway clearance products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">12%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">12%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">13%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">14%</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">100%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">100%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">100%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">100%</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Our revenue by channel, inclusive of sales and rental revenue, for the three and six months ended June 30, 2024 and 2023, are summarized in the following table:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:27.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:29.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:27.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:29.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:13.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:13.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Private insurers and other payers</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 44,066</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 36,499</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 75,343</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 61,924</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Veterans Administration</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,071</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 7,121</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 14,897</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 12,944</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Medicare</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 12,546</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 16,379</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 26,756</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 34,883</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Durable medical equipment distributors</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,535</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,340</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 17,310</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 17,434</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 73,218</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 68,339</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 134,306</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 127,185</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Our rental revenue is derived from rent-to-purchase arrangements that typically range from </span><span style="-sec-ix-hidden:Hidden_284Rs177CEejvCyNOpuTsg;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">three</span></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> to </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">ten months</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">. As title transfers to the patient, with whom we have the contract, upon the termination of the lease term and because collectability is probable, under ASC 842, these are recognized as sales-type leases. Each rental agreement contains two components, the controller and related garments, both of which are interdependent and recognized as one lease component. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The revenue and associated cost of revenue of sales-type leases are recognized on the lease commencement date and a net investment in leases is recorded on the Condensed Consolidated Balance Sheets. We bill the patients&#8217; insurance payers monthly over the duration of the rental term. We record the net investment in leases and recognize revenue upon commencement of the lease in the amount of the expected consideration to be received through the monthly payments. Similar to our sales revenue, the transaction price is impacted by multiple factors, including the terms and conditions contracted by third-party payers. As the rental contract resides with the patients, we have elected the portfolio approach, at the payer level, to determine the expected consideration, which considers the impact of early terminations. While the contract is with the patient, in certain circumstances, the third-party payer elects an initial rental period with an option to extend. We assess the likelihood of extending the lease at the onset of the lease to determine if the option is reasonably certain to be exercised. As the lease is short-term in nature, we anticipate collection of substantially all of the net investment within the first year of the lease agreement. Completion of these payments represents the fair market value of the equipment, and as such, interest income is not applicable. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Rental revenue for the three months ended June 30, 2024 and 2023, was primarily from private insurers. Sales-type lease revenue and the associated cost of revenue for the three and six months ended June 30, 2024 and 2023, was:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended June 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales-type lease revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,951</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,537</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 16,732</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 14,592</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cost of sales-type lease revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,852</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,175</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 5,567</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 5,911</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Gross profit</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 6,099</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 5,362</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 11,165</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.84%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,681</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</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> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-9<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-15<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-13<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org/606/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446484965168">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Taxes</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income Taxes</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 12. Income Taxes</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-top:2pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We record our interim provision for income taxes by applying our estimated annual effective tax rate to our year-to-date pre-tax income (loss) and adjusting for discrete tax items recorded in the period. Deferred income taxes result from temporary differences between the reporting of amounts for financial statement purposes and income tax purposes. These differences relate primarily to different methods used for income tax reporting purposes, including for depreciation and amortization, warranty and vacation accruals, and deductions related to allowances for doubtful accounts receivable and inventory reserves. Our provision for income taxes includes current federal and state income tax expense, as well as deferred federal and state income tax expense.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:14pt 0pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The effective tax rate for the three months ended June 30, 2024, was an expense of </span><span style="font-family:'Arial','Helvetica','sans-serif';">29.2%</span><span style="font-family:'Arial','Helvetica','sans-serif';">, compared to an expense of </span><span style="font-family:'Arial','Helvetica','sans-serif';">108.3%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> for the three months ended June 30, 2023. The primary driver of the change in our effective tax rate was attributable to the fact that we did not have a full valuation allowance on our deferred tax assets for the current year period, while the prior year period reported a full valuation allowance. We recorded </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">income tax expense of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$1.8</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and </span><span style="font-family:'Arial','Helvetica','sans-serif';">$1.3</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the three&#160;months ended June 30, 2024&#160;and 2023, respectively.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The effective tax rate for the six months ended June 30, 2024, was an expense of </span><span style="font-family:'Arial','Helvetica','sans-serif';">36.0%</span><span style="font-family:'Arial','Helvetica','sans-serif';">, compared to a benefit of </span><span style="font-family:'Arial','Helvetica','sans-serif';">44.5%</span><span style="font-family:'Arial','Helvetica','sans-serif';"> for the six months ended June 30, 2023. The primary driver of the change in our effective tax rate was attributable to the fact that we did not have a full valuation allowance on our deferred tax assets for the current year period, while the prior year period reported a full valuation allowance. Additionally, in the prior year period we had year-to-date losses that we expected to realize, which drove a tax benefit. We recorded an income tax expense of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$1.2</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million and an income tax benefit of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$1.6</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million for the six&#160;months ended June 30, 2024&#160;and 2023, respectively.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:14pt 0pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We recognize the financial statement benefit of a tax position only after determining that the relevant tax authority is more-likely-than-not to sustain the position following an audit. For tax positions meeting the more-likely-than-not threshold, the amount recognized in the condensed consolidated financial statements is the largest benefit that has a greater than 50% likelihood of being realized upon ultimate settlement with the relevant tax authority.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The Company currently is not under examination in any jurisdictions.</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 tax.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12C<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12B<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 270<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477891/740-270-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.5.Q1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-13<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/740/tableOfContent<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-14<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-21<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-17<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482603/740-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446482407920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net Income (Loss) Per Share<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Net Income (Loss) Per Share</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 );">Net Income (Loss) Per Share</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 13. Net Income (Loss) Per Share </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The following table sets forth the computation of our basic and diluted net income (loss) per share:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:middle;width:40.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands,&#160;except&#160;share and per share data)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:middle;width:40.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net income (loss)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 4,298</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (100)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,089</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (1,986)</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Weighted-average shares outstanding</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 23,873,379</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 23,352,530</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 23,769,604</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 22,323,856</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Weighted-average shares used to compute diluted net income (loss) per share</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 24,099,047</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 23,352,530</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 24,073,986</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 22,323,856</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net income (loss) per share - Basic</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">0.18 </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">0.00 </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">0.09 </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(0.09)</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net income (loss) per share - Diluted</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">0.18 </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">0.00 </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">0.09 </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(0.09)</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The following common stock equivalents were excluded from the computation of diluted net income (loss) per share for the periods presented because including them would have been anti-dilutive:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Restricted stock units</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 449,056</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 674,178</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 493,370</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 674,178</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Common stock options</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 381,187</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 526,047</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 387,298</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 526,047</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Performance stock units</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 216,291</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 166,457</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 216,291</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Employee stock purchase plan</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 59,509</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 71,253</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 830,243</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,476,025</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,047,125</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,487,769</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</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> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/260/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>33
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446482539632">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresAbstract', window );"><strong>Fair Value Measurements</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 style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Note 14. Fair Value Measurements</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">We determine the fair value of our assets and liabilities based on the exchange price that would be received for an asset or paid to transfer a liability (exit price) in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants on the measurement date. Valuation techniques used to measure fair value maximize the use of observable inputs and minimize the use of unobservable inputs. We use a fair value hierarchy with three levels of inputs, of which the first two are considered observable and the last unobservable, to measure fair value. The fair value hierarchy gives the highest priority to quoted prices in active markets for identical assets or liabilities (Level 1). The next highest priority is based on quoted prices for similar assets or liabilities in active markets or quoted prices for identical </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">or similar assets or liabilities in non-active markets or other observable inputs (Level 2). The lowest priority is given to unobservable inputs (Level 3).</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">As of June 30, 2024, our obligations under the AffloVest Acquisition earn-out arrangements had been paid in full. Prior to the determination of the actual amount of the earn-out, the earn-out liability was valued by employing a Monte Carlo Simulation model in a risk-neutral framework, which is a Level 3 input. The underlying simulated variable included recognized revenue. The recognized revenue volatility estimate was based on a study of historical asset volatility for a set of comparable public companies. The model included other assumptions including the market price of risk, which was calculated as the weighted average cost of capital less the long-term risk-free rate. The earn-out liability was adjusted to fair value at each reporting date until the end of the earn-out period, which was September 30, 2023. Changes in fair value were included in intangible asset amortization and earn-out expenses in our Condensed Consolidated Statements of Operations.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Changes in the earn-out liability measured at fair value using Level 3 inputs were as follows:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:69.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:23.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:69.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:26.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Earn-out liability at December 31, 2022</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:23.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 13,050</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Payment on earn-out</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:23.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (5,000)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Fair value adjustments</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.65%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:23.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,230</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Earn-out liability at June 30, 2023</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:23.09%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 9,280</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">On May 25, 2023, the Company paid </span><span style="font-family:'Arial','Helvetica','sans-serif';">$5.0</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million, plus an imputed interest payment of </span><span style="font-family:'Arial','Helvetica','sans-serif';">$250,000</span><span style="font-family:'Arial','Helvetica','sans-serif';">, relating to the initial earn-out. Subsequent to September 30, 2023, it was determined that the calculated amount of the second earn-out payment was </span><span style="font-family:'Arial','Helvetica','sans-serif';">$5.6</span><span style="font-family:'Arial','Helvetica','sans-serif';"> million, which was paid by the Company on November 28, 2023. </span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:36.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The carrying amounts of financial instruments such as cash equivalents, accounts receivable, other assets, accounts payable, accrued expenses and other liabilities approximate their related fair values due to the short-term maturities of these items. Non-financial assets, such as equipment and leasehold improvements, and intangible assets are subject to non-recurring fair value measurements if they are deemed impaired.</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/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 107<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-107<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 100<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-100<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2E<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 940<br> -SubTopic 820<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478119/940-820-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>34
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446483341024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Pay vs Performance Disclosure - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_PvpTable', window );"><strong>Pay vs Performance Disclosure</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net Income (Loss)</a></td>
<td class="nump">$ 4,298<span></span>
</td>
<td class="num">$ (100)<span></span>
</td>
<td class="nump">$ 2,089<span></span>
</td>
<td class="num">$ (1,986)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_PvpTable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Regulation S-K<br> -Number 229<br> -Section 402<br> -Subsection v<br> -Paragraph 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;">ecd_PvpTable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 34: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 37: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446483582784">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Insider Trading Arrangements<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Jun. 30, 2024 </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_ecd_TradingArrByIndTable', window );"><strong>Trading Arrangements, by Individual</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_ecd_Rule10b51ArrAdoptedFlag', window );">Rule 10b5-1 Arrangement Adopted</a></td>
<td class="text">false<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_ecd_NonRule10b51ArrAdoptedFlag', window );">Non-Rule 10b5-1 Arrangement Adopted</a></td>
<td class="text">false<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_ecd_Rule10b51ArrTrmntdFlag', window );">Rule 10b5-1 Arrangement Terminated</a></td>
<td class="text">false<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_ecd_NonRule10b51ArrTrmntdFlag', window );">Non-Rule 10b5-1 Arrangement Terminated</a></td>
<td class="text">false<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_ecd_IndividualAxis=tcmd_KristieT.BurnsMember', window );">Kristie T. Burns</a></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_ecd_TradingArrByIndTable', window );"><strong>Trading Arrangements, by Individual</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_ecd_MtrlTermsOfTrdArrTextBlock', window );">Material Terms of Trading Arrangement</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;padding-top:2pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">On </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">May 15, 2024</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Kristie T. Burns</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, our </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Senior VP Marketing and Clinical Affairs</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">adopted</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> a pre-arranged trading plan that is intended to satisfy the affirmative defense of Rule 10b5-1(c) of the Exchange Act. This plan provides for the sale of up to </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">7,444</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> shares of our common stock in the aggregate and terminates on the earlier of the close of market on </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">August 26, 2025</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, or the date all shares are sold thereunder.</span></p><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_ecd_TrdArrIndName', window );">Name</a></td>
<td class="text">Kristie T. Burns<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_ecd_TrdArrIndTitle', window );">Title</a></td>
<td class="text">Senior VP Marketing and Clinical Affairs<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_ecd_Rule10b51ArrAdoptedFlag', window );">Rule 10b5-1 Arrangement Adopted</a></td>
<td class="text">true<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_ecd_TrdArrAdoptionDate', window );">Adoption Date</a></td>
<td class="text">May 15, 2024<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_ecd_TrdArrExpirationDate', window );">Expiration Date</a></td>
<td class="text">August 26, 2025<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_ecd_TrdArrSecuritiesAggAvailAmt', window );">Aggregate Available</a></td>
<td class="nump">7,444<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_ecd_IndividualAxis=tcmd_WilliamW.BurkeMember', window );">William W. Burke</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_ecd_TradingArrByIndTable', window );"><strong>Trading Arrangements, by Individual</strong></a></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_ecd_MtrlTermsOfTrdArrTextBlock', window );">Material Terms of Trading Arrangement</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">On </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">May 28, 2024</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">William W. Burke</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Chairman of our Board of Directors</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">adopted</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> a pre-arranged trading plan that is intended to satisfy the affirmative defense of Rule 10b5-1(c) of the Exchange Act. This plan provides for the sale of up to </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">7,013</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> shares of our common stock in the aggregate and terminates on the earlier of the close of market on </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">December 31, 2025</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, or the date all shares are sold thereunder.</span></p><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_ecd_TrdArrIndName', window );">Name</a></td>
<td class="text">William W. Burke<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_ecd_TrdArrIndTitle', window );">Title</a></td>
<td class="text">Chairman of our Board of Directors<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_ecd_Rule10b51ArrAdoptedFlag', window );">Rule 10b5-1 Arrangement Adopted</a></td>
<td class="text">true<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_ecd_TrdArrAdoptionDate', window );">Adoption Date</a></td>
<td class="text">May 28, 2024<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_ecd_TrdArrExpirationDate', window );">Expiration Date</a></td>
<td class="text">December 31, 2025<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_ecd_TrdArrSecuritiesAggAvailAmt', window );">Aggregate Available</a></td>
<td class="nump">7,013<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_ecd_IndividualAxis=tcmd_ElaineM.BirkemeyerMember', window );">Elaine M. Birkemeyer</a></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_ecd_TradingArrByIndTable', window );"><strong>Trading Arrangements, by Individual</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_ecd_MtrlTermsOfTrdArrTextBlock', window );">Material Terms of Trading Arrangement</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">On </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">June 10, 2024</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Elaine M. Birkemeyer</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Chief Financial Officer</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">adopted</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> a pre-arranged trading plan that is intended to satisfy the affirmative defense of Rule 10b5-1(c) of the Exchange Act. This plan provides for the sale of up to </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">84,848</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> shares of our common stock in the aggregate and terminates on the earlier of the close of market on </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">December 31, 2027</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, or the date all shares are sold thereunder.</span></p><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_ecd_TrdArrIndName', window );">Name</a></td>
<td class="text">Elaine M. Birkemeyer<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_ecd_TrdArrIndTitle', window );">Title</a></td>
<td class="text">Chief Financial Officer<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_ecd_Rule10b51ArrAdoptedFlag', window );">Rule 10b5-1 Arrangement Adopted</a></td>
<td class="text">true<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_ecd_TrdArrAdoptionDate', window );">Adoption Date</a></td>
<td class="text">June 10, 2024<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_ecd_TrdArrExpirationDate', window );">Expiration Date</a></td>
<td class="text">December 31, 2027<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_ecd_TrdArrSecuritiesAggAvailAmt', window );">Aggregate Available</a></td>
<td class="nump">84,848<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_ecd_IndividualAxis=tcmd_DanielL.ReuversMember', window );">Daniel L. Reuvers</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_ecd_TradingArrByIndTable', window );"><strong>Trading Arrangements, by Individual</strong></a></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_ecd_MtrlTermsOfTrdArrTextBlock', window );">Material Terms of Trading Arrangement</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">On </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">June 10, 2024</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">Daniel L. Reuvers</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">former Chief Executive Officer and current member of our Board of Directors</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">adopted</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> a pre-arranged trading plan that is intended to satisfy the affirmative defense of Rule 10b5-1(c) of the Exchange Act. This plan provides for the sale of up to </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">130,564</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"> shares of our common stock in </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">the aggregate and terminates on the earlier of the close of market on </span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">December 31, 2025</span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;">, or the date all shares are sold thereunder.</span></p><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_ecd_TrdArrIndName', window );">Name</a></td>
<td class="text">Daniel L. Reuvers<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_ecd_TrdArrIndTitle', window );">Title</a></td>
<td class="text">former Chief Executive Officer and current member of our Board of Directors<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_ecd_Rule10b51ArrAdoptedFlag', window );">Rule 10b5-1 Arrangement Adopted</a></td>
<td class="text">true<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_ecd_TrdArrAdoptionDate', window );">Adoption Date</a></td>
<td class="text">June 10, 2024<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_ecd_TrdArrExpirationDate', window );">Expiration Date</a></td>
<td class="text">December 31, 2025<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_ecd_TrdArrSecuritiesAggAvailAmt', window );">Aggregate Available</a></td>
<td class="nump">130,564<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_MtrlTermsOfTrdArrTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 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;">ecd_MtrlTermsOfTrdArrTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_NonRule10b51ArrAdoptedFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 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;">ecd_NonRule10b51ArrAdoptedFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_NonRule10b51ArrTrmntdFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 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;">ecd_NonRule10b51ArrTrmntdFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_Rule10b51ArrAdoptedFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 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;">ecd_Rule10b51ArrAdoptedFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_Rule10b51ArrTrmntdFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 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;">ecd_Rule10b51ArrTrmntdFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_TradingArrByIndTable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 2<br> -Subparagraph A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_TradingArrByIndTable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_TrdArrAdoptionDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 2<br> -Subparagraph 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;">ecd_TrdArrAdoptionDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_TrdArrExpirationDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 2<br> -Subparagraph C<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_TrdArrExpirationDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_TrdArrIndName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 2<br> -Subparagraph A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_TrdArrIndName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_TrdArrIndTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 2<br> -Subparagraph A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_TrdArrIndTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_TrdArrSecuritiesAggAvailAmt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 2<br> -Subparagraph D<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_TrdArrSecuritiesAggAvailAmt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</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_ecd_IndividualAxis=tcmd_KristieT.BurnsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">ecd_IndividualAxis=tcmd_KristieT.BurnsMember</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_ecd_IndividualAxis=tcmd_WilliamW.BurkeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">ecd_IndividualAxis=tcmd_WilliamW.BurkeMember</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_ecd_IndividualAxis=tcmd_ElaineM.BirkemeyerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">ecd_IndividualAxis=tcmd_ElaineM.BirkemeyerMember</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_ecd_IndividualAxis=tcmd_DanielL.ReuversMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">ecd_IndividualAxis=tcmd_DanielL.ReuversMember</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>36
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446484325104">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Summary of Significant Accounting Policies</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_BasisOfAccountingPolicyPolicyTextBlock', window );">Basis of Presentation</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States (&#8220;GAAP&#8221;) for interim financial reporting and pursuant to the rules and regulations of the SEC. Accordingly, they do not include all of the information and footnotes required by GAAP for complete financial statements. In the opinion of management, all adjustments (including those which are normal and recurring) considered necessary for a fair presentation of the interim financial information have been included.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The results for the six months ended June 30, 2024, are not necessarily indicative of results to be expected for the year ending December 31, 2024, or for any other interim period or for any future year. The condensed consolidated interim financial statements should be read in conjunction with the audited financial statements and notes thereto included in our Annual Report on Form 10-K for the year ended December 31, 2023.</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_ConsolidationPolicyTextBlock', window );">Principles of Consolidation</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Principles of Consolidation</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">The accompanying unaudited condensed consolidated financial statements include the accounts of Tactile Systems Technology, Inc. and its wholly owned subsidiary, Swelling Solutions, Inc. All intercompany balances and transactions have been eliminated in consolidation.</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_UseOfEstimates', window );">Use of Estimates</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:14pt 0pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Use of Estimates</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:14pt 0pt 0pt 0pt;"><span style="color:#2b2c2b;font-family:'Arial','Helvetica','sans-serif';">The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and to disclose contingent assets and liabilities at the date of the financial statements and the reported amounts of revenue and expenses during the reporting period. Actual results could differ from those estimates.</span></p><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_tcmd_NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock', window );">Accounting Pronouncement Not Yet Adopted</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;">Accounting Pronouncement Not Yet Adopted</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">In November 2023, the Financial Accounting Standards Board (&#8220;FASB&#8221;) issued Accounting Standards Update (&#8220;ASU&#8221;) No. 2023-07, &#8220;Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures&#8221; which requires entities to enhance disclosures around segment reporting. The guidance is effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024, with early adoption permitted. The Company is currently evaluating the effect this standard will have on its consolidated financial statements and related disclosures.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">In December 2023, the FASB issued ASU No. 2023-09, &#8220;Income Taxes (Topic 740): Improvements to Income Tax Disclosures&#8221; which requires entities to enhance disclosures around income taxes. The guidance is effective for annual periods beginning after December 15, 2024, with early adoption permitted. The Company is currently evaluating the effect this standard will have on its consolidated financial statements and related disclosures</span><span style="font-family:'Arial','Helvetica','sans-serif';">.</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_tcmd_NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 not yet adopted.</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;">tcmd_NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_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_BasisOfAccountingPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BasisOfAccountingPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConsolidationPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-4<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConsolidationPolicyTextBlock</td>
</tr>
<tr>
<td style="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_UseOfEstimates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-9<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-12<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UseOfEstimates</td>
</tr>
<tr>
<td style="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>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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446482420032">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventories</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Schedule of inventories</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:40.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:25.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:25.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:40.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:27.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At June&#160;30,&#160;2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:27.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At December&#160;31,&#160;2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Finished goods</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 6,365</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 7,979</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Component parts and work-in-process</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 12,481</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 14,548</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total inventories</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 18,846</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 22,527</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</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_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfInventoryCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483489/210-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfInventoryCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446482411600">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets</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_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Schedule of finite lived intangible assets</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:48.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At June&#160;30,&#160;2024</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Carrying</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Net</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Period</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amount</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Definite-lived intangible assets:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Patents</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">12 years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,060</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 290</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 770</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Defensive intangible assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">1 year</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,125</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 993</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 132</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Customer accounts</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 125</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 125</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Customer relationships</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">10 years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 31,000</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 6,704</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 24,296</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Developed technology</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">8 years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 13,000</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,322</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 9,678</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Subtotal</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 46,310</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 11,434</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 34,876</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Unamortized intangible assets:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Tradenames</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 9,500</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 9,500</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Patents pending</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 507</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 507</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total intangible assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 56,317</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 11,434</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 44,883</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="display:inline-block;width:205.5pt;"></span><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:48.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At December&#160;31,&#160;2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Carrying</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Net</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Period</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amount</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Definite-lived intangible assets:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Patents</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">12 years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,018</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 248</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 770</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Defensive intangible assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">1 year</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,125</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 920</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 205</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Customer accounts</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 125</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 125</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Customer relationships</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">11 years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 31,000</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 5,511</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 25,489</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Developed technology</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">9 years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 13,000</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,731</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 10,269</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Subtotal</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 46,268</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 9,535</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 36,733</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Unamortized intangible assets:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Tradenames</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 9,500</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 9,500</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Patents pending</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 491</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 491</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total intangible assets</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 56,259</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 9,535</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 46,724</span></p></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_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock', window );">Schedule of future amortization expense</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2024 (July 1 - December 31)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;&#160;&#160;&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,899</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2025</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,708</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2026</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,643</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2027</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,635</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2028</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,632</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Thereafter</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 18,359</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 34,876</span></p></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://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>39
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446488791744">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrentAbstract', window );"><strong>Accrued Expenses</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_tcmd_ScheduleOfAccruedExpensesTableTextBlock', window );">Schedule of Accrued Expenses</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:34.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:30.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At June&#160;30,&#160;2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:30.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At December&#160;31,&#160;2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Warranty</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,131</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,357</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Legal and consulting</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,161</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 611</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">In-transit inventory</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,102</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 401</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Travel</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 933</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,038</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Clinical studies</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 339</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 363</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales and use tax</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 108</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 183</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Other</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 928</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 951</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 6,702</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:27.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 5,904</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</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_tcmd_ScheduleOfAccruedExpensesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the carrying value as of the balance sheet date of accrued expenses excluding accounts payable. 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tcmd_ScheduleOfAccruedExpensesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_AccruedLiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccruedLiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-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>40
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446484472832">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Warranty Reserves (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyDisclosureAbstract', window );"><strong>Warranty Reserves</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_ScheduleOfProductWarrantyLiabilityTableTextBlock', window );">Schedule of warranty reserves</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended </b></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June&#160;30,&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June&#160;30,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Beginning balance</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,836</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 4,000</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 4,038</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 4,212</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Warranty provision</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 902</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,026</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,742</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,900</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Processed warranty claims</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (1,046)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (1,198)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (2,088)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (2,284)</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Ending balance</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,692</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,828</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,692</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,828</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#ff0000;font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#ff0000;font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Accrued warranty reserve, current</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,131</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,871</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,131</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,871</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Accrued warranty reserve, non-current</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,561</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,957</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,561</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,957</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total accrued warranty reserve</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,692</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,828</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,692</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,828</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;visibility:hidden;">&#8203;</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_ScheduleOfProductWarrantyLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty 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/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="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_StandardProductWarrantyDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StandardProductWarrantyDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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>41
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446488808992">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Credit Agreement (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Credit Agreement</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_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock', window );">Schedule of maturities of the term note payable</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:66.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:29.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Amount</b></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2024 (July 1 - December 31)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,500</span></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2025</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,000</span></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2026</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 23,250</span></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 27,750</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Less: Deferred financing fees</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (96)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net Note Payable</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 27,654</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Less: Current portion of note payable</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (2,956)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Non-current portion of note payable</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:25.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 24,698</span></p></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_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 maturity and sinking fund requirement for long-term 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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock</td>
</tr>
<tr>
<td style="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>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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446484803680">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies</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_tcmd_AssetsAndLiabilitiesLesseeTableTextBlock', window );">Summary of lease-related assets and liabilities</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:17.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At June&#160;30,&#160;2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:21.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">At December&#160;31,&#160;2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="-sec-ix-hidden:Hidden_XGg9ZJfBzkKoHvrqqrYL-A;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">Right of use operating lease assets</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 17,828</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 19,128</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Operating lease liabilities:</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="-sec-ix-hidden:Hidden_RYmMhvoXpkm2HlfUhjWQpw;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">Current</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,799</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,807</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="-sec-ix-hidden:Hidden_OCBgoeuof0yCuc0I2N4Lzw;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;">Non-current</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 17,142</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 18,436</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 19,941</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 21,243</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;"><span style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Operating leases: </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Weighted average remaining lease term</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">6.3</span><span style="font-family:'Arial','Helvetica','sans-serif';"> years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">6.7</span><span style="font-family:'Arial','Helvetica','sans-serif';"> years</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Weighted average discount rate</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">4.3%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">4.3%</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;vertical-align:top;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:41.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;width:17.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;width:21.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Supplemental cash flow information for our operating leases:</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cash paid for operating lease liabilities</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,743</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,710</span></p></td></tr><tr><td style="vertical-align:bottom;width:56.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Non-cash right of use assets obtained in exchange for new operating lease obligations</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</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_OperatingLeaseLeaseIncomeTableTextBlock', window );">Summary of undiscounted cash flows</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2024 (July 1 - December 31)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">  </span><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,791</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2025</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,645</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2026</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,716</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2027</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,210</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">2028</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,185</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Thereafter</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 6,943</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total minimum lease payments</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 22,490</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Less: Amount of lease payments representing interest</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (2,549)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Present value of future minimum lease payments</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 19,941</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Less: Current obligations under operating lease liabilities</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (2,799)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Non-current obligations under operating lease liabilities</span></p></td><td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 17,142</span></p></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_tcmd_AssetsAndLiabilitiesLesseeTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tabular disclosure of lease-related assets and 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;">tcmd_AssetsAndLiabilitiesLesseeTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_OperatingLeaseLeaseIncomeTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 components of income 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> -Topic 842<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479773/842-30-50-5<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-6A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLeaseIncomeTableTextBlock</td>
</tr>
<tr>
<td style="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>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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446481366512">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock', window );">Schedule of allocation of total stock-based compensation expense</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended </b></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June&#160;30,&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June&#160;30,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cost of revenue</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 103</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 121</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 186</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 224</span></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales and marketing expenses</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 606</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 810</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,344</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,562</span></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Research and development expenses</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 48</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 44</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 81</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 93</span></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Reimbursement, general and administrative expenses</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,103</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 833</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,288</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,952</span></p></td></tr><tr><td style="vertical-align:bottom;width:50.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total stock-based compensation expense</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.82%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,860</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,808</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,899</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:8.22%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,831</span></p></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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Schedule of stock option activity</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:-0.08757782%;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Aggregate</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Exercise&#160;Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Intrinsic</b></p></td></tr><tr><td style="vertical-align:bottom;width:37.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands except options and per share data)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Outstanding</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Per Share </b><sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Contractual Life</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Value </b><sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(2)</sup></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at December 31, 2023</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 429,960</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 40.74</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">3.8</span><span style="font-family:'Arial','Helvetica','sans-serif';"> years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 223</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Exercised</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (1,153)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1.35</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 14</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cancelled/Expired</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (12,995)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 41.17</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at June 30, 2024</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 415,812</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 40.83</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">3.3</span><span style="font-family:'Arial','Helvetica','sans-serif';"> years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 125</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Options exercisable at June&#160;30,&#160;2024</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 392,239</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 42.19</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">3.2</span><span style="font-family:'Arial','Helvetica','sans-serif';"> years</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 65</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;text-decoration-line:none;text-transform:none;vertical-align:baseline;white-space:nowrap;width:18pt;padding:0pt 0pt 6pt 0pt;">(1)</td><td style="padding:0pt 0pt 6pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;">The exercise price of each option granted during the period shown was equal to the market price of the underlying stock on the date of grant.</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;text-decoration-line:none;text-transform:none;vertical-align:baseline;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;">(2)</td><td style="padding:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;">The aggregate intrinsic value of options exercised represents the difference between the exercise price of the option and the closing stock price of our common stock on the date of exercise. The aggregate intrinsic value of options outstanding represents the difference between the exercise price of the option and the closing stock price of our common stock on the last trading day of the period.</span></td></tr></table><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=tcmd_TimeBasedRestrictedStockUnitsRsusMember', window );">Time-Based Restricted Stock Units</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_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock', window );">Schedule of stock-settled restricted stock unit activity</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average Grant</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Aggregate</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Units</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Date Fair Value</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Intrinsic</b></p></td></tr><tr><td style="vertical-align:bottom;width:46.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands except unit and per unit data)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Outstanding</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Per Unit</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">Value </b><sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at December 31, 2023</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 589,142</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 16.35</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,425</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Granted</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 464,145</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 13.87</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Vested</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (224,149)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 18.02</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cancelled</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (107,363)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 14.62</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at June 30, 2024</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 721,775</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 14.50</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,618</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 6pt 0pt;">(1)</td><td style="padding:0pt 0pt 6pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;">The aggregate intrinsic value of restricted stock units outstanding was based on our closing stock price on the last trading day of the period. </span></td></tr></table><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=tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember', window );">Performance-based stock-settled restricted stock units</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_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock', window );">Schedule of stock-settled restricted stock unit activity</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Average Grant</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Aggregate</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">PSUs</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Date Fair Value</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Intrinsic</b></p></td></tr><tr><td style="vertical-align:bottom;width:44.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands except unit and per unit data)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Outstanding</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Per Unit</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;">Value </b><sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at December 31, 2023</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 198,232</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 18.93</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,785</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Granted</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 160,659</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 13.88</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Vested</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (44,162)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 27.31</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cancelled</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (104,913)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 14.14</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:44.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Balance at June 30, 2024</span></p></td><td style="vertical-align:bottom;white-space:normal;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15.08%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 209,816</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 15.70</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:14.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,505</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"><tr><td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;">(1)</td><td style="padding:0pt 0pt 12pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;">The aggregate intrinsic value of PSUs outstanding was based on our closing stock price on the last trading day of the period. </span></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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock</td>
</tr>
<tr>
<td style="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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_AwardTypeAxis=tcmd_TimeBasedRestrictedStockUnitsRsusMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_TimeBasedRestrictedStockUnitsRsusMember</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=tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember</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>44
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446570141344">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue</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_DisaggregationOfRevenueTableTextBlock', window );">Summary of revenue disaggregated by product</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Lymphedema products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 64,683</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 59,999</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 116,996</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 109,751</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Airway clearance products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,535</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,340</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 17,310</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 17,434</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 73,218</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 68,339</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 134,306</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 127,185</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Percentage of total revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Lymphedema products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">88%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">88%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">87%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">86%</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Airway clearance products</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">12%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">12%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">13%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">14%</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">100%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">100%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">100%</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">100%</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><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_tcmd_ScheduleOfRevenueFromThirdPartyPayersTableTextBlock', window );">Summary of revenue by channel</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:normal;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:27.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:29.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:27.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:normal;width:29.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:13.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:normal;width:13.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Private insurers and other payers</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 44,066</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 36,499</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 75,343</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 61,924</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Veterans Administration</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,071</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 7,121</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 14,897</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 12,944</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Medicare</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 12,546</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 16,379</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 26,756</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 34,883</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Durable medical equipment distributors</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,535</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,340</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 17,310</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 17,434</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 73,218</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 68,339</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 134,306</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 127,185</span></p></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_SalesTypeLeaseLeaseIncomeTableTextBlock', window );">Sales-type lease revenue and the associated cost of goods sold</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended June 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Sales-type lease revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,951</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,537</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 16,732</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 14,592</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Cost of sales-type lease revenue</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,852</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 3,175</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 5,567</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 5,911</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:31.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Gross profit</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 6,099</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 5,362</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 11,165</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.84%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 8,681</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</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_tcmd_ScheduleOfRevenueFromThirdPartyPayersTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of disaggregation of revenue revenues from third-party payers.</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;">tcmd_ScheduleOfRevenueFromThirdPartyPayersTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_DisaggregationOfRevenueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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_SalesTypeLeaseLeaseIncomeTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 components of income from sales-type 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> -Topic 842<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479773/842-30-50-5<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-6A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SalesTypeLeaseLeaseIncomeTableTextBlock</td>
</tr>
<tr>
<td style="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>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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446483429008">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net Income (Loss) Per Shar (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Net Income (Loss) Per Share</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 computation of the basic and diluted net income (loss) per share</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:middle;width:40.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands,&#160;except&#160;share and per share data)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:middle;width:40.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net income (loss)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 4,298</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (100)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 2,089</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (1,986)</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Weighted-average shares outstanding</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 23,873,379</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 23,352,530</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 23,769,604</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 22,323,856</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Weighted-average shares used to compute diluted net income (loss) per share</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 24,099,047</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 23,352,530</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 24,073,986</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 22,323,856</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net income (loss) per share - Basic</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">0.18 </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">0.00 </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">0.09 </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(0.09)</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Net income (loss) per share - Diluted</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">0.18 </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">0.00 </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">0.09 </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(0.09)</span></p></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_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock', window );">Schedule of potentially dilutive securities outstanding</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">Six Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">June 30,</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Restricted stock units</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 449,056</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 674,178</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 493,370</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 674,178</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Common stock options</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 381,187</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 526,047</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 387,298</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 526,047</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Performance stock units</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 216,291</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 166,457</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 216,291</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Employee stock purchase plan</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 59,509</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> &#8212;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 71,253</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Total</span></p></td><td style="vertical-align:bottom;white-space:normal;width:2.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 830,243</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,476,025</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,047,125</span></p></td><td style="vertical-align:bottom;white-space:normal;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:normal;width:11.96%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,487,769</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;">&#8203;</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_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="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_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> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>46
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446483099888">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresAbstract', window );"><strong>Fair Value Measurements</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_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock', window );">Schedule of changes in the earn-out liability</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:69.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:23.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:69.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">(In&#160;thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:26.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Earn-out liability at December 31, 2022</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:23.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 13,050</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Payment on earn-out</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:23.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> (5,000)</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Fair value adjustments</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.65%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:23.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 1,230</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">Earn-out liability at June 30, 2023</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';">$</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:23.09%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> 9,280</span></p></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_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_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and liabilities, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, 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://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock</td>
</tr>
<tr>
<td style="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>47
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446485296512">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Nature of Business and Operations (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Feb. 27, 2023</div></th>
<th class="th"><div>Aug. 02, 2016</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockLineItems', window );"><strong>Nature of Business and Operations</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_ProceedsFromIssuanceOfCommonStock', window );">Proceeds from Issuance of Common Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 34,625<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_SubsidiarySaleOfStockAxis=us-gaap_IPOMember', window );">IPO</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_SubsidiarySaleOfStockLineItems', window );"><strong>Nature of Business and Operations</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_StockIssuedDuringPeriodSharesNewIssues', window );">Number of shares of common stock sold</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,120,000<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_SharesIssuedPricePerShare', window );">IPO price per share (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 10.00<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_ProceedsFromIssuanceInitialPublicOffering', window );">Net proceeds from the initial public offering</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 35,400<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_tcmd_ExpenseRelatingToInitialPublicOffering', window );">Expense Relating To Initial Public Offering</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,900<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_SubsidiarySaleOfStockAxis=tcmd_FollowOnPublicOfferingMember', window );">Follow-On Public Offering</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_SubsidiarySaleOfStockLineItems', window );"><strong>Nature of Business and Operations</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_StockIssuedDuringPeriodSharesNewIssues', window );">Number of shares of common stock sold</a></td>
<td class="nump">2,875,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_SharePrice', window );">Stock price</a></td>
<td class="nump">$ 13.00<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_ProceedsFromIssuanceOfCommonStock', window );">Proceeds from Issuance of Common Stock</a></td>
<td class="nump">$ 34,600<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_tcmd_ExpenseRelatingToInitialPublicOffering">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 relating to the initial public offering 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;">tcmd_ExpenseRelatingToInitialPublicOffering</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_ProceedsFromIssuanceInitialPublicOffering">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount received from entity's first offering of stock to the public.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceInitialPublicOffering</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SharePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Price of a single share of a number of saleable stocks of a company.</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_SharePrice</td>
</tr>
<tr>
<td style="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_SharesIssuedPricePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 per unit amount of equity securities issued.</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_SharesIssuedPricePerShare</td>
</tr>
<tr>
<td style="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_StockIssuedDuringPeriodSharesNewIssues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 new stock issued 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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478448/946-505-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(i)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesNewIssues</td>
</tr>
<tr>
<td style="padding-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_SubsidiarySaleOfStockLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_SubsidiarySaleOfStockLineItems</td>
</tr>
<tr>
<td style="padding-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_SubsidiarySaleOfStockAxis=us-gaap_IPOMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SubsidiarySaleOfStockAxis=us-gaap_IPOMember</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_SubsidiarySaleOfStockAxis=tcmd_FollowOnPublicOfferingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SubsidiarySaleOfStockAxis=tcmd_FollowOnPublicOfferingMember</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>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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446482438768">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Inventories (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNetAbstract', window );"><strong>Inventories</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_InventoryFinishedGoods', window );">Finished goods</a></td>
<td class="nump">$ 6,365<span></span>
</td>
<td class="nump">$ 7,979<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcess', window );">Component parts and work-in-process</a></td>
<td class="nump">12,481<span></span>
</td>
<td class="nump">14,548<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_InventoryNet', window );">Total inventories</a></td>
<td class="nump">$ 18,846<span></span>
</td>
<td class="nump">$ 22,527<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoods">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryFinishedGoods</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InventoryNetAbstract</td>
</tr>
<tr>
<td style="padding-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_InventoryWorkInProcess">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryWorkInProcess</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446486563008">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill And Intangible Assets (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Sep. 30, 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>Goodwill and Intangible Assets</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">$ 31,063<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 31,063<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 31,063<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_AssetImpairmentCharges', window );">Impairment recognized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Definite-lived intangible assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Gross Carrying Amount</a></td>
<td class="nump">46,310<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">46,310<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">46,268<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_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">11,434<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11,434<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,535<span></span>
</td>
<td class="text">&#160;<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_FiniteLivedIntangibleAssetsNet', window );">Total</a></td>
<td class="nump">34,876<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">34,876<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">36,733<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_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract', window );"><strong>Unamortized intangible assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_IntangibleAssetsGrossExcludingGoodwill', window );">Total intangible assets (Gross)</a></td>
<td class="nump">56,317<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">56,317<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">56,259<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_IntangibleAssetsNetExcludingGoodwill', window );">Total intangible assets (Net)</a></td>
<td class="nump">44,883<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">44,883<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">46,724<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_AmortizationOfIntangibleAssets', window );">Amortization expense</a></td>
<td class="nump">1,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,000<span></span>
</td>
<td class="nump">1,900<span></span>
</td>
<td class="nump">$ 1,900<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_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Future Amortization</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear', window );">2024 (July 1 - December 31)</a></td>
<td class="nump">1,899<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,899<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_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2025</a></td>
<td class="nump">3,708<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,708<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2026</a></td>
<td class="nump">3,643<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,643<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">2027</a></td>
<td class="nump">3,635<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,635<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">2028</a></td>
<td class="nump">3,632<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,632<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour', window );">Thereafter</a></td>
<td class="nump">18,359<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">18,359<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="reu">
<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">34,876<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">34,876<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">36,733<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_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember', window );">Tradenames</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract', window );"><strong>Unamortized intangible assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill', window );">Gross Carrying Amount, Indefinite</a></td>
<td class="nump">9,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,500<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_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_PatentsMember', window );">Patents pending</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract', window );"><strong>Unamortized intangible assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_IndefiniteLivedIntangibleAssetsExcludingGoodwill', window );">Gross Carrying Amount, Indefinite</a></td>
<td class="nump">$ 507<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 507<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 491<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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_PatentsMember', window );">Patents pending</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Definite-lived intangible assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Weighted Average Amortization Period</a></td>
<td class="text">12 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">12 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">12 years<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 );">Gross Carrying Amount</a></td>
<td class="nump">$ 1,060<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,060<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,018<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_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">290<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">290<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">248<span></span>
</td>
<td class="text">&#160;<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_FiniteLivedIntangibleAssetsNet', window );">Total</a></td>
<td class="nump">770<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">770<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">770<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_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Future Amortization</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_FiniteLivedIntangibleAssetsNet', window );">Total</a></td>
<td class="nump">$ 770<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 770<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 770<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_FiniteLivedIntangibleAssetsByMajorClassAxis=tcmd_DefensiveIntangibleAssetsMember', window );">Defensive intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Definite-lived intangible assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Weighted Average Amortization Period</a></td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<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 );">Gross Carrying Amount</a></td>
<td class="nump">$ 1,125<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,125<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,125<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_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">993<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">993<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">920<span></span>
</td>
<td class="text">&#160;<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_FiniteLivedIntangibleAssetsNet', window );">Total</a></td>
<td class="nump">132<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">132<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">205<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_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Future Amortization</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_FiniteLivedIntangibleAssetsNet', window );">Total</a></td>
<td class="nump">132<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">132<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">205<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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerContractsMember', window );">Customer accounts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Definite-lived intangible assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Gross Carrying Amount</a></td>
<td class="nump">125<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">125<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">125<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_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">$ 125<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 125<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 125<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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember', window );">Customer relationships</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Definite-lived intangible assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Weighted Average Amortization Period</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">11 years<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 );">Gross Carrying Amount</a></td>
<td class="nump">$ 31,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 31,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 31,000<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_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">6,704<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,704<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,511<span></span>
</td>
<td class="text">&#160;<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_FiniteLivedIntangibleAssetsNet', window );">Total</a></td>
<td class="nump">24,296<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">24,296<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25,489<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_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Future Amortization</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_FiniteLivedIntangibleAssetsNet', window );">Total</a></td>
<td class="nump">$ 24,296<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 24,296<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 25,489<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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember', window );">Developed technology</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Definite-lived intangible assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Weighted Average Amortization Period</a></td>
<td class="text">8 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">8 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">9 years<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 );">Gross Carrying Amount</a></td>
<td class="nump">$ 13,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 13,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 13,000<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_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">3,322<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,322<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,731<span></span>
</td>
<td class="text">&#160;<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_FiniteLivedIntangibleAssetsNet', window );">Total</a></td>
<td class="nump">9,678<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,678<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,269<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_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Future Amortization</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_FiniteLivedIntangibleAssetsNet', window );">Total</a></td>
<td class="nump">9,678<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,678<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 10,269<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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of revenue.</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract', window );"><strong>Unamortized intangible assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization expense</a></td>
<td class="nump">$ 300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 300<span></span>
</td>
<td class="nump">$ 600<span></span>
</td>
<td class="nump">$ 600<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_BusinessAcquisitionAxis=tcmd_AfflovestPMember', window );">AffloVest APA</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>Goodwill and Intangible Assets</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 31,100<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482686/350-30-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480265/350-10-S45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 remainder of current fiscal year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract</td>
</tr>
<tr>
<td style="padding-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_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/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480265/350-10-S45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 928<br> -SubTopic 340<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478859/928-340-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482686/350-30-45-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483154/926-20-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483154/926-20-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_FiniteLivedIntangibleAssetsNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FiniteLivedIntangibleAssetsNetAbstract</td>
</tr>
<tr>
<td style="padding-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_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> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483154/926-20-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>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 asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is 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/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482548/350-20-55-24<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 100<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-100<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482598/350-20-45-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_IndefiniteLivedIntangibleAssetsExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of 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/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480265/350-10-S45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract</td>
</tr>
<tr>
<td style="padding-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_IntangibleAssetsGrossExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amortization of intangible assets, excluding 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/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsGrossExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482686/350-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember</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_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_PatentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_PatentsMember</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_PatentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PatentsMember</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=tcmd_DefensiveIntangibleAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_DefensiveIntangibleAssetsMember</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_CustomerContractsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CustomerContractsMember</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_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CustomerRelationshipsMember</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_DevelopedTechnologyRightsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DevelopedTechnologyRightsMember</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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember</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=tcmd_AfflovestPMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_AfflovestPMember</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>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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446483102880">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Accrued Expenses (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrentAbstract', window );"><strong>Accrued Expenses</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_ProductWarrantyAccrualClassifiedCurrent', window );">Warranty</a></td>
<td class="nump">$ 2,131<span></span>
</td>
<td class="nump">$ 2,357<span></span>
</td>
<td class="nump">$ 1,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_AccruedProfessionalFeesCurrent', window );">Legal and consulting</a></td>
<td class="nump">1,161<span></span>
</td>
<td class="nump">611<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_tcmd_InTransitInventoryAccruedExpense', window );">In-transit inventory</a></td>
<td class="nump">1,102<span></span>
</td>
<td class="nump">401<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_tcmd_AccruedTravelAndEntertainmentCurrent', window );">Travel</a></td>
<td class="nump">933<span></span>
</td>
<td class="nump">1,038<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tcmd_AccruedClinicalStudiesExpensesCurrent', window );">Clinical studies</a></td>
<td class="nump">339<span></span>
</td>
<td class="nump">363<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_tcmd_AccruedSalesAndUseTax', window );">Sales and use tax</a></td>
<td class="nump">108<span></span>
</td>
<td class="nump">183<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_OtherAccruedLiabilitiesCurrent', window );">Other</a></td>
<td class="nump">928<span></span>
</td>
<td class="nump">951<span></span>
</td>
<td class="text">&#160;<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_AccruedLiabilitiesCurrent', window );">Total</a></td>
<td class="nump">$ 6,702<span></span>
</td>
<td class="nump">$ 5,904<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_tcmd_AccruedClinicalStudiesExpensesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 carrying amount as of the balance sheet date of accrued clinical studies.</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;">tcmd_AccruedClinicalStudiesExpensesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_tcmd_AccruedSalesAndUseTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 relating to sales and use tax.</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;">tcmd_AccruedSalesAndUseTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_tcmd_AccruedTravelAndEntertainmentCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 travel and entertainment expenses. 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tcmd_AccruedTravelAndEntertainmentCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_tcmd_InTransitInventoryAccruedExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>In-transit inventory accrued 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;">tcmd_InTransitInventoryAccruedExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_AccruedLiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccruedLiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-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_AccruedProfessionalFeesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 professional fees, such as for legal and accounting services received. 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedProfessionalFeesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_ProductWarrantyAccrualClassifiedCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 estimated claims under standard and extended warranty protection rights granted to customers. For classified balance sheets, represents 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualClassifiedCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>51
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446482894944">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Warranty Reserves (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MovementInStandardProductWarrantyAccrualRollForward', window );"><strong>Movement in Standard Product Warranty Accrual [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrual', window );">Beginning balance</a></td>
<td class="nump">$ 3,836<span></span>
</td>
<td class="nump">$ 4,000<span></span>
</td>
<td class="nump">$ 4,038<span></span>
</td>
<td class="nump">$ 4,212<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_StandardProductWarrantyAccrualWarrantiesIssued', window );">Warranty provision</a></td>
<td class="nump">902<span></span>
</td>
<td class="nump">1,026<span></span>
</td>
<td class="nump">1,742<span></span>
</td>
<td class="nump">1,900<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_StandardProductWarrantyAccrualPayments', window );">Processed warranty claims</a></td>
<td class="num">(1,046)<span></span>
</td>
<td class="num">(1,198)<span></span>
</td>
<td class="num">(2,088)<span></span>
</td>
<td class="num">(2,284)<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_StandardProductWarrantyAccrual', window );">Ending balance</a></td>
<td class="nump">3,692<span></span>
</td>
<td class="nump">3,828<span></span>
</td>
<td class="nump">3,692<span></span>
</td>
<td class="nump">3,828<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_ProductWarrantyAccrualClassifiedCurrent', window );">Accrued warranty reserve, current</a></td>
<td class="nump">2,131<span></span>
</td>
<td class="nump">1,871<span></span>
</td>
<td class="nump">2,131<span></span>
</td>
<td class="nump">1,871<span></span>
</td>
<td class="nump">$ 2,357<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualNoncurrent', window );">Accrued warranty reserve, non-current</a></td>
<td class="nump">1,561<span></span>
</td>
<td class="nump">1,957<span></span>
</td>
<td class="nump">1,561<span></span>
</td>
<td class="nump">1,957<span></span>
</td>
<td class="nump">$ 1,681<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_ProductWarrantyAccrual', window );">Total accrued warranty reserve</a></td>
<td class="nump">$ 3,692<span></span>
</td>
<td class="nump">$ 3,828<span></span>
</td>
<td class="nump">$ 3,692<span></span>
</td>
<td class="nump">$ 3,828<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_MovementInStandardProductWarrantyAccrualRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a 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_MovementInStandardProductWarrantyAccrualRollForward</td>
</tr>
<tr>
<td style="padding-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_ProductWarrantyAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 estimated claims under standard and extended warranty protection rights granted to customers.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ProductWarrantyAccrualClassifiedCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 estimated claims under standard and extended warranty protection rights granted to customers. For classified balance sheets, represents 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualClassifiedCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ProductWarrantyAccrualNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 due after one year (or beyond the operating cycle if longer) for estimated claims under standard and extended warranty protection rights granted to customers.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_StandardProductWarrantyAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 as of the balance sheet date of the aggregate standard product warranty liability. Does not include the balance for the extended product warranty 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> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_StandardProductWarrantyAccrualPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the standard product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard product warranty. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_StandardProductWarrantyAccrualWarrantiesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the standard product warranty accrual from warranties issued. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualWarrantiesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>52
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446485987776">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Credit Agreement (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 21, 2023</div></th>
<th class="th"><div>Aug. 01, 2023</div></th>
<th class="th"><div>Jun. 21, 2023</div></th>
<th class="th"><div>Feb. 22, 2022</div></th>
<th class="th"><div>Sep. 08, 2021</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Credit Agreement</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity', window );">Line of credit, threshold contingent increase in borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 25,000,000.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_tcmd_CreditAgreementTotalAggregatePrincipalAmount', window );">Credit agreement, total aggregate principal amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">80,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Long-term debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 27,800,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_LineOfCredit', window );">Credit facility outstanding amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.10%<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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_VariableRateAxis=us-gaap_SecuredOvernightFinancingRateSofrMember', window );">SOFR</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Credit Agreement</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3.50%<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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving credit facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Credit Agreement</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25,000,000.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_DebtInstrumentPeriodicPayment', window );">Debt instrument periodic payment</a></td>
<td class="nump">$ 16,800,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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving credit facility | Federal Funds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Credit Agreement</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.50%<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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving credit facility | Base Rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Credit Agreement</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.00%<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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving credit facility | SOFR</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Credit Agreement</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3.50%<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">7.18%<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_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving credit facility | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Credit Agreement</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage', window );">Unused line fee (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.20%<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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving credit facility | Maximum | Base Rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Credit Agreement</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.25%<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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving credit facility | Maximum | SOFR</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Credit Agreement</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3.25%<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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving credit facility | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Credit Agreement</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage', window );">Unused line fee (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.125%<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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving credit facility | Minimum | Base Rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Credit Agreement</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.75%<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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving credit facility | Minimum | SOFR</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Credit Agreement</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.75%<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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=tcmd_TermLoanMember', window );">Term Loan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Credit Agreement</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Debt instrument face amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">30,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Long-term debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 30,000,000.0<span></span>
</td>
<td class="nump">$ 27,654,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_tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment', window );">Principal prepayment of term loan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,000,000.0<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_ProceedsFromIssuanceOfDebt', window );">Increase in term debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,250,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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFrequencyOfPeriodicPayment', window );">Debt instrument frequency of periodic payment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">quarterly<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentPeriodicPayment', window );">Debt instrument periodic payment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 750,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tcmd_CreditAgreementTotalAggregatePrincipalAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 aggregate principal amount under the credit agreement.</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;">tcmd_CreditAgreementTotalAggregatePrincipalAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 mandatory principal prepayment paid</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;">tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Of Credit, Threshold Contingent Increase In Borrowing Capacity</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;">tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_DebtInstrumentBasisSpreadOnVariableRate1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 points added to the reference rate to compute the variable rate on the debt 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;">us-gaap_DebtInstrumentBasisSpreadOnVariableRate1</td>
</tr>
<tr>
<td style="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_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (par) amount of debt instrument at time of issuance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482949/835-30-55-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69B<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69C<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482900/835-30-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFaceAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DebtInstrumentFrequencyOfPeriodicPayment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of the frequency of periodic payments (monthly, quarterly, annual).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477734/942-470-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFrequencyOfPeriodicPayment</td>
</tr>
<tr>
<td style="padding-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_DebtInstrumentPeriodicPayment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the required periodic payments including both interest and principal payments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477734/942-470-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentPeriodicPayment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LineOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the 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> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LineOfCreditFacilityLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityLineItems</td>
</tr>
<tr>
<td style="padding-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_LineOfCreditFacilityMaximumBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the credit facility.</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_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage</td>
</tr>
<tr>
<td style="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_LongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482949/835-30-55-8<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69B<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69C<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ProceedsFromIssuanceOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 during the period from additional borrowings in aggregate debt. Includes proceeds from short-term and long-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_VariableRateAxis=us-gaap_SecuredOvernightFinancingRateSofrMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VariableRateAxis=us-gaap_SecuredOvernightFinancingRateSofrMember</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_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember</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_VariableRateAxis=us-gaap_FederalFundsEffectiveSwapRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VariableRateAxis=us-gaap_FederalFundsEffectiveSwapRateMember</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_VariableRateAxis=us-gaap_BaseRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VariableRateAxis=us-gaap_BaseRateMember</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_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_us-gaap_CreditFacilityAxis=tcmd_TermLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CreditFacilityAxis=tcmd_TermLoanMember</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>53
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446485728720">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Credit Agreement - Maturities of Debt (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Sep. 08, 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_LongTermDebtByMaturityAbstract', window );"><strong>Maturities of notes payable</strong></a></td>
<td class="text">&#160;<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_LongTermDebt', window );">Net Note Payable</a></td>
<td class="nump">$ 27,800<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_CreditFacilityAxis=tcmd_TermLoanMember', window );">Term Loan</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_LongTermDebtByMaturityAbstract', window );"><strong>Maturities of notes payable</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_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear', window );">2024 (July 1 - December 31)</a></td>
<td class="nump">1,500<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_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths', window );">2025</a></td>
<td class="nump">3,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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo', window );">2026</a></td>
<td class="nump">23,250<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_DebtInstrumentCarryingAmount', window );">Total</a></td>
<td class="nump">27,750<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_DeferredFinanceCostsNet', window );">Less: Deferred financing fees</a></td>
<td class="num">(96)<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_LongTermDebt', window );">Net Note Payable</a></td>
<td class="nump">27,654<span></span>
</td>
<td class="nump">$ 30,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_LongTermDebtCurrent', window );">Less: Current portion of note payable</a></td>
<td class="num">(2,956)<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_LongTermDebtNoncurrent', window );">Non-current portion of note payable</a></td>
<td class="nump">$ 24,698<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_DebtInstrumentCarryingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of 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> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentCarryingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredFinanceCostsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-1A<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482900/835-30-50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFinanceCostsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482949/835-30-55-8<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69B<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69C<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LongTermDebtByMaturityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LongTermDebtByMaturityAbstract</td>
</tr>
<tr>
<td style="padding-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_LongTermDebtCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as current. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in remainder of current fiscal year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LongTermDebtNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CreditFacilityAxis=tcmd_TermLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CreditFacilityAxis=tcmd_TermLoanMember</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>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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446480790832">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies - Lease Obligations (Details) - ft&#178;<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Oct. 31, 2018</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Commitments and Contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseTermOfContract', window );">Lease terms</a></td>
<td class="text">12 months<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="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_BuildingMember', window );">Building | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Commitments and Contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseTermOfContract', window );">Lease terms</a></td>
<td class="text">1 year<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="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_BuildingMember', window );">Building | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Commitments and Contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseTermOfContract', window );">Lease terms</a></td>
<td class="text">7 years<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="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</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Commitments and Contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend', window );">Option to renew</a></td>
<td class="text">true<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="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 | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Commitments and Contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseTermOfContract', window );">Lease terms</a></td>
<td class="text">1 year<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="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 | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Commitments and Contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseTermOfContract', window );">Lease terms</a></td>
<td class="text">4 years<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="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=tcmd_CorporateHeadQuarterInitialLeaseMember', window );">Initial lease</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Commitments and Contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AreaOfLand', window );">Area of office space</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">80,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_PropertyPlantAndEquipmentByTypeAxis=tcmd_CorporateHeadQuarterSecondLeaseMember', window );">Second lease</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Commitments and Contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AreaOfLand', window );">Area of office space</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">29,000<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_tcmd_AdditionalOfficeSpaceAdded', window );">Additional office space added to the lease</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,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_PropertyPlantAndEquipmentByTypeAxis=tcmd_CorporateHeadQuarterThirdLeaseMember', window );">Third lease</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Commitments and Contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tcmd_AdditionalOfficeSpaceAdded', window );">Additional office space added to the lease</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">37,000<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_tcmd_AdditionalOfficeSpaceAdded">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Additional office space added to the lease.</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;">tcmd_AdditionalOfficeSpaceAdded</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:areaItemType</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_AreaOfLand">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of land held.</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_AreaOfLand</td>
</tr>
<tr>
<td style="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:areaItemType</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_LesseeLeaseDescriptionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeLeaseDescriptionLineItems</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseExistenceOfOptionToExtend">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (true false) whether lessee has option to extend 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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_LesseeOperatingLeaseTermOfContract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Term of lessee's 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/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseTermOfContract</td>
</tr>
<tr>
<td style="padding-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_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_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BuildingMember</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_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_us-gaap_PropertyPlantAndEquipmentByTypeAxis=tcmd_CorporateHeadQuarterInitialLeaseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_CorporateHeadQuarterInitialLeaseMember</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=tcmd_CorporateHeadQuarterSecondLeaseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_CorporateHeadQuarterSecondLeaseMember</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=tcmd_CorporateHeadQuarterThirdLeaseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_CorporateHeadQuarterThirdLeaseMember</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>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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446483613472">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies - Lease related assets and liabilities (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">6 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsAndLiabilitiesLesseeAbstract', window );"><strong>Lease-related assets and liabilities</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_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List]</a></td>
<td class="text">Right of use operating lease assets<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Right of use operating lease assets<span></span>
</td>
</tr>
<tr class="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 );">Right of use operating lease assets</a></td>
<td class="nump">$ 17,828<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 19,128<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]</a></td>
<td class="text">Operating lease liabilities, Current<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Operating lease liabilities, Current<span></span>
</td>
</tr>
<tr class="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 );">Operating lease liabilities, Current</a></td>
<td class="nump">$ 2,799<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,807<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]</a></td>
<td class="text">Operating lease liabilities, non-current<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Operating lease liabilities, non-current<span></span>
</td>
</tr>
<tr class="re">
<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 liabilities, non-current</a></td>
<td class="nump">$ 17,142<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 18,436<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_OperatingLeaseLiability', window );">Present value of future minimum lease payments</a></td>
<td class="nump">$ 19,941<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 21,243<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Weighted average remaining lease term</a></td>
<td class="text">6 years 3 months 18 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">6 years 8 months 12 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_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Weighted average discount rate</a></td>
<td class="nump">4.30%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.30%<span></span>
</td>
</tr>
<tr class="re">
<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 lease liabilities</a></td>
<td class="nump">$ 1,743<span></span>
</td>
<td class="nump">$ 1,710<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_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability', window );">Non-cash right of use assets obtained in exchange for new operating lease obligations</a></td>
<td class="nump">$ 3<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_AssetsAndLiabilitiesLesseeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AssetsAndLiabilitiesLesseeAbstract</td>
</tr>
<tr>
<td style="padding-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_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 line item in statement of financial position that includes current 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/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</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_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 line item in statement of financial position that includes noncurrent 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/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</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_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-5<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 line item in statement of financial position that includes operating lease right-of-use asset.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</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_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/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>
<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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446482902160">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Commitments and Contingencies - Undiscounted cash flows (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract', window );"><strong>Undiscounted cash flows</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_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear', window );">2024 (July 1 - December 31)</a></td>
<td class="nump">$ 1,791<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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2025</a></td>
<td class="nump">3,645<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_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2026</a></td>
<td class="nump">3,716<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_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2027</a></td>
<td class="nump">3,210<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_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">2028</a></td>
<td class="nump">3,185<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_tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour', window );">Thereafter</a></td>
<td class="nump">6,943<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 minimum lease payments</a></td>
<td class="nump">22,490<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: Amount of lease payments representing interest</a></td>
<td class="num">(2,549)<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_OperatingLeaseLiability', window );">Present value of future minimum lease payments</a></td>
<td class="nump">19,941<span></span>
</td>
<td class="nump">$ 21,243<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Less: Current obligations under operating lease liabilities</a></td>
<td class="num">(2,799)<span></span>
</td>
<td class="num">(2,807)<span></span>
</td>
</tr>
<tr class="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 );">Non-current obligations under operating lease liabilities</a></td>
<td class="nump">$ 17,142<span></span>
</td>
<td class="nump">$ 18,436<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_OperatingLeaseLiabilitiesPaymentsDueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OperatingLeaseLiabilitiesPaymentsDueAbstract</td>
</tr>
<tr>
<td style="padding-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_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>57
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446483971648">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies - Lease commitments and operating lease cost (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense', window );">Operating lease cost</a></td>
<td class="nump">$ 0.9<span></span>
</td>
<td class="nump">$ 0.9<span></span>
</td>
<td class="nump">$ 1.8<span></span>
</td>
<td class="nump">$ 1.8<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_OperatingLeaseRightOfUseAssetAmortizationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 periodic reduction over lease term of carrying amount of right-of-use asset 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/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>58
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446481158240">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies - Major Vendors (Details) - item<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis=tcmd_VendorOneMember', window );">Vendor One</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Commitments and Contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tcmd_NumberOfVendors', window );">Number of vendors</a></td>
<td class="nump">1<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="nump">1<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_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis=tcmd_VendorTwoMember', window );">Vendor Two</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Commitments and Contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tcmd_NumberOfVendors', window );">Number of vendors</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2<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_ConcentrationRiskByBenchmarkAxis=us-gaap_CostOfGoodsTotalMember', window );">Purchases | Vendor | Vendor One</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Commitments and Contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Total purchases (in percentage)</a></td>
<td class="nump">17.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.00%<span></span>
</td>
<td class="nump">24.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_ConcentrationRiskByBenchmarkAxis=us-gaap_CostOfGoodsTotalMember', window );">Purchases | Vendor | Vendor Two</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Commitments and Contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Total purchases (in percentage)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">30.00%<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_tcmd_NumberOfVendors">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the number of vendors.</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;">tcmd_NumberOfVendors</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</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_ConcentrationRiskLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478785/954-310-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskLineItems</td>
</tr>
<tr>
<td style="padding-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_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> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-21<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-20<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-20<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis=tcmd_VendorOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis=tcmd_VendorOneMember</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_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis=tcmd_VendorTwoMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis=tcmd_VendorTwoMember</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_CostOfGoodsTotalMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CostOfGoodsTotalMember</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_SupplierConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SupplierConcentrationRiskMember</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>59
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446482409504">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Commitments and Contingencies - Purchase Commitments (Details)<br> $ in Millions</strong></div></th>
<th class="th">
<div>Jun. 30, 2024 </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_PurchaseObligationFiscalYearMaturityAbstract', window );"><strong>Purchase commitments</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_PurchaseObligationDueInNextTwelveMonths', window );">Purchase orders issued</a></td>
<td class="nump">$ 28.8<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_PurchaseObligationDueInNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 purchase arrangement to be paid in next fiscal year following current fiscal year. Includes, but is not limited to, recorded and unrecorded purchase obligations, long-term purchase commitment, and short-term purchase commitment. 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PurchaseObligationDueInNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PurchaseObligationFiscalYearMaturityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PurchaseObligationFiscalYearMaturityAbstract</td>
</tr>
<tr>
<td style="padding-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>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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446578166480">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies - Retirement Plan (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetirementPlanNameAxis=tcmd_DefinedContribution401kRetirementPlanMember', window );">401(k)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanDisclosureLineItems', window );"><strong>Retirement Plan</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount', window );">Discretionary contributions</a></td>
<td class="nump">$ 0.4<span></span>
</td>
<td class="nump">$ 0.3<span></span>
</td>
<td class="nump">$ 1.1<span></span>
</td>
<td class="nump">$ 0.7<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_DefinedContributionPlanDisclosureLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 70<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480794/715-70-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanDisclosureLineItems</td>
</tr>
<tr>
<td style="padding-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_DefinedContributionPlanEmployerDiscretionaryContributionAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 discretionary contributions made by an employer to a defined contribution 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;">us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_RetirementPlanNameAxis=tcmd_DefinedContribution401kRetirementPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RetirementPlanNameAxis=tcmd_DefinedContribution401kRetirementPlanMember</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>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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446481644992">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Commitments and Contingencies - Legal Proceedings (Details) - The "Weaver Lawsuit"<br> $ in Millions</strong></div></th>
<th class="th">
<div>Jun. 27, 2024 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>May 24, 2022 </div>
<div>item</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_LossContingenciesLineItems', window );"><strong>Loss Contingencies [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_tcmd_NumberOfOfficerAndDirectors', window );">Number of former officers and directors | item</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LitigationSettlementLoss', window );">Litigation fees and expenses | $</a></td>
<td class="nump">$ 0.5<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_tcmd_NumberOfOfficerAndDirectors">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 officers and directors.</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;">tcmd_NumberOfOfficerAndDirectors</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</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_LitigationSettlementLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 litigation settlement for amount awarded to other party. Excludes claims within an insurance entity's normal claims settlement process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483076/450-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LitigationSettlementLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LossContingenciesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483076/450-20-50-4<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483076/450-20-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 720<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483359/720-20-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 27<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482395/460-10-55-27<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483076/450-20-50-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483076/450-20-50-4<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483076/450-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LossContingenciesLineItems</td>
</tr>
<tr>
<td style="padding-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_srt_LitigationCaseAxis=tcmd_WeaverLawsuitMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LitigationCaseAxis=tcmd_WeaverLawsuitMember</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>62
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446482746560">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Stock-Based Compensation (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 01, 2024</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationAbstract', window );"><strong>Stock-based compensation</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,860<span></span>
</td>
<td class="nump">$ 1,808<span></span>
</td>
<td class="nump">$ 3,899<span></span>
</td>
<td class="nump">$ 3,831<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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of revenue.</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationAbstract', window );"><strong>Stock-based compensation</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">103<span></span>
</td>
<td class="nump">121<span></span>
</td>
<td class="nump">186<span></span>
</td>
<td class="nump">224<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_IncomeStatementLocationAxis=us-gaap_SellingAndMarketingExpenseMember', window );">Sales and marketing expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationAbstract', window );"><strong>Stock-based compensation</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">606<span></span>
</td>
<td class="nump">810<span></span>
</td>
<td class="nump">1,344<span></span>
</td>
<td class="nump">1,562<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_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember', window );">Research and development expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationAbstract', window );"><strong>Stock-based compensation</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">48<span></span>
</td>
<td class="nump">44<span></span>
</td>
<td class="nump">81<span></span>
</td>
<td class="nump">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_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember', window );">Reimbursement, general and administrative expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationAbstract', window );"><strong>Stock-based compensation</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,103<span></span>
</td>
<td class="nump">$ 833<span></span>
</td>
<td class="nump">$ 2,288<span></span>
</td>
<td class="nump">$ 1,952<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=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationAbstract', window );"><strong>Stock-based compensation</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized', window );">Number of shares authorized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,800,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,800,000<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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage', window );">Automatic annual increase to the number of shares reserved and available for issuance as a percentage of outstanding common stock (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.00%<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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber', window );">Automatic annual increase to the number of shares reserved and available for issuance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,500,000<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized', window );">Increase in number of shares reserved and available for issuance</a></td>
<td class="nump">1,180,019<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_CommonStockCapitalSharesReservedForFutureIssuance', window );">Shares available for future issuance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,615,454<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,615,454<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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents information pertaining to the automatic annual increase in shares reserved and available for issuance. The automatic increases occur on the first day of the year beginning January 1, 2017.</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;">tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents information pertaining to the automatic annual increase in shares reserved and available for issuance as a percentage to outstanding number of shares. The automatic increases occur on the first day of the year beginning January 1, 2017.</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;">tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_CommonStockCapitalSharesReservedForFutureIssuance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of common shares reserved for future issuance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockCapitalSharesReservedForFutureIssuance</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareBasedCompensationAbstract</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 additional shares authorized for issuance under share-based payment arrangement.</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 authorized for issuance 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/exampleRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized</td>
</tr>
<tr>
<td style="padding-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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember</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_IncomeStatementLocationAxis=us-gaap_SellingAndMarketingExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeStatementLocationAxis=us-gaap_SellingAndMarketingExpenseMember</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_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember</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_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember</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=tcmd_EquityIncentivePlan2016Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_EquityIncentivePlan2016Member</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>63
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446477143632">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Stock Options and Restricted Stock (Details)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Jun. 30, 2024 </div>
<div>USD ($) </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Jun. 30, 2023 </div>
<div>USD ($) </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Jun. 30, 2024 </div>
<div>USD ($) </div>
<div>item </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Jun. 30, 2023 </div>
<div>USD ($) </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Stock-based compensation expense | $</a></td>
<td class="nump">$ 1,860<span></span>
</td>
<td class="nump">$ 1,808<span></span>
</td>
<td class="nump">$ 3,899<span></span>
</td>
<td class="nump">$ 3,831<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_EmployeeStockOptionMember', window );">Employee Stock Option</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Stock-based compensation expense | $</a></td>
<td class="nump">100<span></span>
</td>
<td class="nump">$ 200<span></span>
</td>
<td class="nump">200<span></span>
</td>
<td class="nump">$ 500<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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions', window );">Total unrecognized pre-tax compensation expense related to nonvested stock option awards | $</a></td>
<td class="nump">$ 100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 100<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 );">Weighted-average period over which unrecognized compensation cost is expected to be recognized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward', window );"><strong>Options Outstanding</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Outstanding at beginning of period | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">429,960<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_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,153)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod', window );">Cancelled/Expired | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(12,995)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding at end of period | shares</a></td>
<td class="nump">415,812<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">415,812<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward', window );"><strong>Weighted Average Exercise Price Per Share</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Outstanding at beginning of period | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 40.74<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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Exercised | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.35<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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice', window );">Cancelled/Expired | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">41.17<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding at end of period | $ / shares</a></td>
<td class="nump">$ 40.83<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 40.83<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract', window );"><strong>Other information</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Options exercisable number of shares exercisable | shares</a></td>
<td class="nump">392,239<span></span>
</td>
<td class="nump">435,559<span></span>
</td>
<td class="nump">392,239<span></span>
</td>
<td class="nump">435,559<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 );">Options exercisable, weighted-average exercise price | $ / shares</a></td>
<td class="nump">$ 42.19<span></span>
</td>
<td class="nump">$ 44.67<span></span>
</td>
<td class="nump">$ 42.19<span></span>
</td>
<td class="nump">$ 44.67<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Weighted average remaining contractual life (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years 3 months 18 days<span></span>
</td>
<td class="text">3 years 9 months 18 days<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 );">Options exercisable, weighted-average remaining contractual life</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 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="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, Options outstanding | $</a></td>
<td class="nump">$ 125<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 125<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue', window );">Aggregate Intrinsic Value, Exercised | $</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">14<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1', window );">Aggregate Intrinsic Value, Options exercisable | $</a></td>
<td class="nump">65<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 65<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_EmployeeStockOptionMember', window );">Employee Stock Option | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years<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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod', window );">Term (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">7 years<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_EmployeeStockOptionMember', window );">Employee Stock Option | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">4 years<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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod', window );">Term (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 years<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_PlanNameAxis=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan | Time-Based Restricted Stock Units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Stock-based compensation expense | $</a></td>
<td class="nump">1,500<span></span>
</td>
<td class="nump">$ 1,300<span></span>
</td>
<td class="nump">$ 2,900<span></span>
</td>
<td class="nump">$ 2,600<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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions', window );">Total unrecognized pre-tax compensation expense related to awards | $</a></td>
<td class="nump">$ 8,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,300<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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Weighted-average period over which unrecognized compensation cost is expected to be recognized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year 10 months 24 days<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Units Outstanding</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Restricted stock unit awards outstanding at the beginning of the period (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">589,142<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">464,145<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(224,149)<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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod', window );">Cancelled (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(107,363)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Restricted stock unit awards outstanding at the end of the period (in shares) | shares</a></td>
<td class="nump">721,775<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">721,775<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value Per Unit</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Restricted stock unit awards outstanding at the beginning of the period (in dollars per share) | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 16.35<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (in dollars per share) | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">13.87<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Vested (in dollars per share) | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">18.02<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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue', window );">Cancelled (in dollars per share) | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">14.62<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Restricted stock unit awards outstanding at the end of the period (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 14.50<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 14.50<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_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract', window );"><strong>Aggregate Intrinsic Value</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding', window );">Restricted stock unit awards, Average Intrinsic Value | $</a></td>
<td class="nump">$ 8,618<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,618<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,425<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=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan | Time-Based Restricted Stock Units | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<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_PlanNameAxis=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan | Time-Based Restricted Stock Units | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years<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_PlanNameAxis=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan | Performance-based stock-settled restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Stock-based compensation expense | $</a></td>
<td class="nump">200<span></span>
</td>
<td class="nump">$ 100<span></span>
</td>
<td class="nump">$ 600<span></span>
</td>
<td class="nump">$ 300<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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions', window );">Total unrecognized pre-tax compensation expense related to awards | $</a></td>
<td class="nump">$ 1,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,500<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 );">Weighted-average period over which unrecognized compensation cost is expected to be recognized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods', window );">Number of performance awards under share-based payment arrangement | item</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Units Outstanding</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Restricted stock unit awards outstanding at the beginning of the period (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">198,232<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">160,659<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(44,162)<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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod', window );">Cancelled (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(104,913)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Restricted stock unit awards outstanding at the end of the period (in shares) | shares</a></td>
<td class="nump">209,816<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">209,816<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value Per Unit</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Restricted stock unit awards outstanding at the beginning of the period (in dollars per share) | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 18.93<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (in dollars per share) | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">13.88<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Vested (in dollars per share) | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">27.31<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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue', window );">Cancelled (in dollars per share) | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">14.14<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Restricted stock unit awards outstanding at the end of the period (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 15.70<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 15.70<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_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract', window );"><strong>Aggregate Intrinsic Value</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding', window );">Restricted stock unit awards, Average Intrinsic Value | $</a></td>
<td class="nump">$ 2,505<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,505<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,785<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=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan | Performance-based stock-settled restricted stock units | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin', window );">Performance goals revenue change and adjusted EBITDA margin</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25.00%<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_PlanNameAxis=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan | Performance-based stock-settled restricted stock units | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin', window );">Performance goals revenue change and adjusted EBITDA margin</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">175.00%<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_PlanNameAxis=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan | 2025 PSUs | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin', window );">Performance goals revenue change and adjusted EBITDA margin</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25.00%<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_PlanNameAxis=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan | 2025 PSUs | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin', window );">Performance goals revenue change and adjusted EBITDA margin</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">175.00%<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_PlanNameAxis=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan | 2024 PSUs | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin', window );">Performance goals revenue change and adjusted EBITDA margin</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25.00%<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_PlanNameAxis=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan | 2024 PSUs | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin', window );">Performance goals revenue change and adjusted EBITDA margin</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">175.00%<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_PlanNameAxis=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan | 2023 PSUs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods', window );">Number of performance awards under share-based payment arrangement | item</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3<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_PlanNameAxis=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan | Tranche one | 2024 PSUs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Award vesting percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33.33%<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_PlanNameAxis=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan | Tranche one | 2023 PSUs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Award vesting percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33.33%<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_PlanNameAxis=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan | Tranche two | 2025 PSUs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Award vesting percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33.33%<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_PlanNameAxis=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan | Tranche three | 2026 PSUs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Stock-based compensation, general disclosures.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Award vesting percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33.33%<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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cancelled during the reporting 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;">tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cancelled during the reporting 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;">tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 performance awards under share-based payment arrangement.</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;">tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 percent of revenue change and adjusted EBITDA margin to be achieved under performance goals of awards under share based payment arrangement.</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;">tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 to be recognized for 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/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 to be recognized for option 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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</td>
</tr>
<tr>
<td style="padding-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_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward</td>
</tr>
<tr>
<td style="padding-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_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward</td>
</tr>
<tr>
<td style="padding-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_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward</td>
</tr>
<tr>
<td style="padding-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_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward</td>
</tr>
<tr>
<td style="padding-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_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 vesting of 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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage</td>
</tr>
<tr>
<td style="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_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 outstanding 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 from grant date that an equity-based award expires, 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/exampleRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently 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> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 option awards outstanding, 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> -Topic 718<br> -SubTopic 10<br> -Subparagraph (e)(1)<br> -Name Accounting Standards Codification<br> -Paragraph 2<br> -Section 50<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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_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_PlanNameAxis=tcmd_EquityIncentivePlan2016Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_EquityIncentivePlan2016Member</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=tcmd_TimeBasedRestrictedStockUnitsRsusMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_TimeBasedRestrictedStockUnitsRsusMember</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=tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember</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=tcmd_TwoThousandTwentyFivePsuMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_TwoThousandTwentyFivePsuMember</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=tcmd_TwoThousandTwentyFourPsuMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_TwoThousandTwentyFourPsuMember</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=tcmd_TwoThousandTwentyThreePsuMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_TwoThousandTwentyThreePsuMember</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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheOneMember</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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheTwoMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheTwoMember</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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheThreeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheThreeMember</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=tcmd_TwoThousandTwentySixPsuMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_TwoThousandTwentySixPsuMember</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>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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446475886048">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Employee Stock Purchase Plan (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jan. 01, 2024</div></th>
<th class="th"><div>Apr. 27, 2016</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_ClassOfStockLineItems', window );"><strong>Stockholders' Equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 1,860<span></span>
</td>
<td class="nump">$ 1,808<span></span>
</td>
<td class="nump">$ 3,899<span></span>
</td>
<td class="nump">$ 3,831<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_PlanNameAxis=tcmd_EquityIncentivePlan2016Member', window );">2016 Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ClassOfStockLineItems', window );"><strong>Stockholders' Equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance', window );">Shares reserved</a></td>
<td class="nump">6,615,454<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,615,454<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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=us-gaap_EmployeeStockMember', window );">Employee Stock Purchase Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ClassOfStockLineItems', window );"><strong>Stockholders' Equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent', window );">Purchase price of common stock under plan (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">85.00%<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod', window );">Offering period (in months)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">6 months<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_CommonStockCapitalSharesReservedForFutureIssuance', window );">Shares reserved</a></td>
<td class="nump">1,497,964<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,497,964<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">236,003<span></span>
</td>
<td class="nump">1,600,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_tcmd_IncrementalSharesToBeIssuedPercentage', window );">Incremental share increase (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.00%<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tcmd_IncrementalShareIncrease', window );">Incremental share increase (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">500,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>
</tr>
<tr class="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 );">Stock-based compensation expense</a></td>
<td class="nump">$ 100<span></span>
</td>
<td class="nump">$ 100<span></span>
</td>
<td class="nump">$ 200<span></span>
</td>
<td class="nump">$ 300<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_tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 which an employee's right to purchase shares of stock at a discount, 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;">tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_tcmd_IncrementalShareIncrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the minimum increase in shares on an annual basis.</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;">tcmd_IncrementalShareIncrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_tcmd_IncrementalSharesToBeIssuedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the incremental annual share percentage increase minimum.</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;">tcmd_IncrementalSharesToBeIssuedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_ClassOfStockLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 2: http://www.xbrl.org/2003/role/recommendedDisclosureRef<br> -Topic 272<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483014/272-10-45-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 272<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482987/272-10-50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-14<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-18<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(27)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(i)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(i)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(i)(2)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(i)(2)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ClassOfStockLineItems</td>
</tr>
<tr>
<td style="padding-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_CommonStockCapitalSharesReservedForFutureIssuance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of common shares reserved for future issuance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockCapitalSharesReservedForFutureIssuance</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Purchase price of common stock expressed as a percentage of its 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;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent</td>
</tr>
<tr>
<td style="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_PlanNameAxis=tcmd_EquityIncentivePlan2016Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_EquityIncentivePlan2016Member</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_SubsidiarySaleOfStockAxis=us-gaap_EmployeeStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SubsidiarySaleOfStockAxis=us-gaap_EmployeeStockMember</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>65
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446476205504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Revenue</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 73,218<span></span>
</td>
<td class="nump">$ 68,339<span></span>
</td>
<td class="nump">$ 134,306<span></span>
</td>
<td class="nump">$ 127,185<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_tcmd_PercentageOfRevenue', window );">Percentage of total revenue (in percent)</a></td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.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_SalesTypeLeaseLeaseIncomeAbstract', window );"><strong>Revenue from sale type lease</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SalesTypeLeaseRevenue', window );">Sales-type lease revenue</a></td>
<td class="nump">$ 8,951<span></span>
</td>
<td class="nump">$ 8,537<span></span>
</td>
<td class="nump">$ 16,732<span></span>
</td>
<td class="nump">$ 14,592<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsSoldSalesTypeLease', window );">Cost of sales-type lease revenue</a></td>
<td class="nump">2,852<span></span>
</td>
<td class="nump">3,175<span></span>
</td>
<td class="nump">5,567<span></span>
</td>
<td class="nump">5,911<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_SalesTypeLeaseSellingProfitLoss', window );">Gross profit</a></td>
<td class="nump">6,099<span></span>
</td>
<td class="nump">5,362<span></span>
</td>
<td class="nump">$ 11,165<span></span>
</td>
<td class="nump">8,681<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</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SalesTypeLeaseLeaseIncomeAbstract', window );"><strong>Revenue from sale type lease</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tcmd_RentToPurchaseArrangementsRentalPeriod', window );">Rental period of rent-to-purchase arrangements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 months<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_RangeAxis=srt_MaximumMember', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SalesTypeLeaseLeaseIncomeAbstract', window );"><strong>Revenue from sale type lease</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tcmd_RentToPurchaseArrangementsRentalPeriod', window );">Rental period of rent-to-purchase arrangements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 months<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=tcmd_PrivateInsurersMember', window );">Private insurers and other payers</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Revenue</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">44,066<span></span>
</td>
<td class="nump">36,499<span></span>
</td>
<td class="nump">$ 75,343<span></span>
</td>
<td class="nump">61,924<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=tcmd_VeteransAdministrationMember', window );">Veterans Administration</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Revenue</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">8,071<span></span>
</td>
<td class="nump">7,121<span></span>
</td>
<td class="nump">14,897<span></span>
</td>
<td class="nump">12,944<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=tcmd_MedicareMember', window );">Medicare</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Revenue</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">12,546<span></span>
</td>
<td class="nump">16,379<span></span>
</td>
<td class="nump">26,756<span></span>
</td>
<td class="nump">34,883<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=tcmd_DurableMedicalEquipmentDistributorsMember', window );">Durable medical equipment distributors</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Revenue</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">8,535<span></span>
</td>
<td class="nump">8,340<span></span>
</td>
<td class="nump">17,310<span></span>
</td>
<td class="nump">17,434<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tcmd_LymphedemaProductsMember', window );">Lymphedema products</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Revenue</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 64,683<span></span>
</td>
<td class="nump">$ 59,999<span></span>
</td>
<td class="nump">$ 116,996<span></span>
</td>
<td class="nump">$ 109,751<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_tcmd_PercentageOfRevenue', window );">Percentage of total revenue (in percent)</a></td>
<td class="nump">88.00%<span></span>
</td>
<td class="nump">88.00%<span></span>
</td>
<td class="nump">87.00%<span></span>
</td>
<td class="nump">86.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_ProductOrServiceAxis=tcmd_AirwayClearanceProductsMember', window );">Airway clearance products</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Revenue</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 8,535<span></span>
</td>
<td class="nump">$ 8,340<span></span>
</td>
<td class="nump">$ 17,310<span></span>
</td>
<td class="nump">$ 17,434<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_tcmd_PercentageOfRevenue', window );">Percentage of total revenue (in percent)</a></td>
<td class="nump">12.00%<span></span>
</td>
<td class="nump">12.00%<span></span>
</td>
<td class="nump">13.00%<span></span>
</td>
<td class="nump">14.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tcmd_PercentageOfRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 revenue disaggregated by products.</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;">tcmd_PercentageOfRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_tcmd_RentToPurchaseArrangementsRentalPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Rental period of rent-to-purchase arrangements.</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;">tcmd_RentToPurchaseArrangementsRentalPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_CostOfGoodsSoldSalesTypeLease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cost of goods sold for sales-type financing 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> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-6A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479773/842-30-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsSoldSalesTypeLease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SalesTypeLeaseLeaseIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SalesTypeLeaseLeaseIncomeAbstract</td>
</tr>
<tr>
<td style="padding-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_SalesTypeLeaseRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 sales-type lease revenue.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-6A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479773/842-30-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SalesTypeLeaseRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_SalesTypeLeaseSellingProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 profit (loss) recognized at commencement from sales-type 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> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-6A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479773/842-30-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SalesTypeLeaseSellingProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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_srt_MajorCustomersAxis=tcmd_PrivateInsurersMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_PrivateInsurersMember</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=tcmd_VeteransAdministrationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_VeteransAdministrationMember</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=tcmd_MedicareMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_MedicareMember</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=tcmd_DurableMedicalEquipmentDistributorsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_DurableMedicalEquipmentDistributorsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=tcmd_LymphedemaProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=tcmd_LymphedemaProductsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=tcmd_AirwayClearanceProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=tcmd_AirwayClearanceProductsMember</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>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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446486584480">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Taxes</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax expense (benefit)</a></td>
<td class="nump">$ 1,776<span></span>
</td>
<td class="nump">$ 1,320<span></span>
</td>
<td class="nump">$ 1,176<span></span>
</td>
<td class="num">$ (1,593)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract', window );"><strong>Effective Income Tax Rate Reconciliation, Percent</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations', window );">Net effective rate</a></td>
<td class="nump">29.20%<span></span>
</td>
<td class="nump">108.30%<span></span>
</td>
<td class="nump">36.00%<span></span>
</td>
<td class="num">(44.50%)<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_EffectiveIncomeTaxRateContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateContinuingOperations</td>
</tr>
<tr>
<td style="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_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract</td>
</tr>
<tr>
<td style="padding-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_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_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482659/740-20-45-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>67
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446480448128">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net Income (Loss) Per Share - Basic and Diluted Net income (Loss) Per Share (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Net Income (Loss) Per Share</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net Income (Loss)</a></td>
<td class="nump">$ 4,298<span></span>
</td>
<td class="num">$ (100)<span></span>
</td>
<td class="nump">$ 2,089<span></span>
</td>
<td class="num">$ (1,986)<span></span>
</td>
</tr>
<tr class="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 outstanding</a></td>
<td class="nump">23,873,379<span></span>
</td>
<td class="nump">23,352,530<span></span>
</td>
<td class="nump">23,769,604<span></span>
</td>
<td class="nump">22,323,856<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Weighted-average shares used to compute diluted net income (loss) per share</a></td>
<td class="nump">24,099,047<span></span>
</td>
<td class="nump">23,352,530<span></span>
</td>
<td class="nump">24,073,986<span></span>
</td>
<td class="nump">22,323,856<span></span>
</td>
</tr>
<tr class="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 );">Net income (loss) per share - Basic</a></td>
<td class="nump">$ 0.18<span></span>
</td>
<td class="nump">$ 0.00<span></span>
</td>
<td class="nump">$ 0.09<span></span>
</td>
<td class="num">$ (0.09)<span></span>
</td>
</tr>
<tr class="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 );">Net income (loss) per share - Diluted</a></td>
<td class="nump">$ 0.18<span></span>
</td>
<td class="nump">$ 0.00<span></span>
</td>
<td class="nump">$ 0.09<span></span>
</td>
<td class="num">$ (0.09)<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> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 34: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 37: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>68
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446485814928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net Income (Loss) Per Share - Antidilutive Securities Excluded From Computation of Earnings Per Share (Details) - shares<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems', window );"><strong>Net Income (Loss) Per Share</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Antidilutive securities excluded from computation of earnings per share</a></td>
<td class="nump">830,243<span></span>
</td>
<td class="nump">1,476,025<span></span>
</td>
<td class="nump">1,047,125<span></span>
</td>
<td class="nump">1,487,769<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</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems', window );"><strong>Net Income (Loss) Per Share</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Antidilutive securities excluded from computation of earnings per share</a></td>
<td class="nump">449,056<span></span>
</td>
<td class="nump">674,178<span></span>
</td>
<td class="nump">493,370<span></span>
</td>
<td class="nump">674,178<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 );">Common stock options</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems', window );"><strong>Net Income (Loss) Per Share</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Antidilutive securities excluded from computation of earnings per share</a></td>
<td class="nump">381,187<span></span>
</td>
<td class="nump">526,047<span></span>
</td>
<td class="nump">387,298<span></span>
</td>
<td class="nump">526,047<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_PerformanceSharesMember', window );">Performance stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems', window );"><strong>Net Income (Loss) Per Share</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Antidilutive securities excluded from computation of earnings per share</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">216,291<span></span>
</td>
<td class="nump">166,457<span></span>
</td>
<td class="nump">216,291<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=tcmd_EmployeeStockPurchasePlanMember', window );">Employee stock purchase plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems', window );"><strong>Net Income (Loss) Per Share</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Antidilutive securities excluded from computation of earnings per share</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">59,509<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">71,253<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> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_PerformanceSharesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PerformanceSharesMember</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=tcmd_EmployeeStockPurchasePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tcmd_EmployeeStockPurchasePlanMember</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>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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446482923008">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements - Earn out liability (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Nov. 28, 2023</div></th>
<th class="th"><div>May 25, 2023</div></th>
<th class="th"><div>Mar. 31, 2023</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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>
<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_PaymentForContingentConsiderationLiabilityFinancingActivities', window );">Payments on earn-out</a></td>
<td class="num">$ (5,600)<span></span>
</td>
<td class="num">$ (5,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (5,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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Significant Unobservable Inputs (Level 3)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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>
<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_BusinessCombinationContingentConsiderationLiability', window );">Earn-out liability, beginning balance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 13,050<span></span>
</td>
<td class="nump">$ 13,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_PaymentForContingentConsiderationLiabilityFinancingActivities', window );">Payments on earn-out</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(5,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_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1', window );">Fair value adjustments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,230<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_BusinessCombinationContingentConsiderationLiability', window );">Earn-out liability, ending balance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9,280<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_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the value of a contingent consideration liability, including, but not limited to, differences arising upon settlement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationContingentConsiderationLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479613/805-30-35-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479668/805-30-25-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationContingentConsiderationLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 100<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-100<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_PaymentForContingentConsiderationLiabilityFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, not made soon after acquisition date of business combination, to settle contingent consideration liability up to amount recognized at acquisition date, including, but not limited to, measurement period adjustment and less amount paid soon after 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (f)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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>70
<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.24.2.u1</span><table class="report" border="0" cellspacing="2" id="idm140446578928912">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements - Fair Value Hierarchy (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Nov. 28, 2023</div></th>
<th class="th"><div>May 25, 2023</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresAbstract', window );"><strong>Fair Value Measurements</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_PaymentForContingentConsiderationLiabilityFinancingActivities', window );">Earn-out liability payment</a></td>
<td class="nump">$ 5,600,000<span></span>
</td>
<td class="nump">$ 5,000,000.0<span></span>
</td>
<td class="nump">$ 5,000,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_tcmd_BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment', window );">Imputed interest payment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 250,000<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_tcmd_BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 imputed interest payment on business combination contingent consideration 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;">tcmd_BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tcmd_</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_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_PaymentForContingentConsiderationLiabilityFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, not made soon after acquisition date of business combination, to settle contingent consideration liability up to amount recognized at acquisition date, including, but not limited to, measurement period adjustment and less amount paid soon after 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (f)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>EXCEL
<SEQUENCE>71
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( -. !5D'04UB@0   +$    0    9&]C4')O<',O87!P+GAM
M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG
M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGD<Z,STA)8*O4'J@)I9GF
M3?X.CD:?<@X>K7A.YNJQ<&4GPZ4A!0W_<FW>J=0U[R;UEA_6\#MI7E!+ P04
M    " #3@ 59*G<K!.\    K @  $0   &1O8U!R;W!S+V-O<F4N>&ULS9+!
M:L,P#(9?9?B>R''7,DR:RT9/'0Q6V-C-V&IK&L?&UDCZ]G.R-F5L#["CI=^?
M/H%J':3V$5^B#QC)8KH;7-LEJ<.:'8F"!$CZB$ZE,B>ZW-S[Z!3E9SQ 4/JD
M#@B"\Q4X)&44*1B!19B)K*F-ECJB(A\O>*-G?/B,[00S&K!%AQTEJ,H*6#-.
M#.>AK>$&&&&$T:7O IJ9.%7_Q$X=8)?DD.R<ZON^[!=3+N]0P?OS]G5:M[!=
M(M5IS+^2E70.N&;7R6^+QZ?=AC6"B_N"/Q1\N1-<\I44RX_1]8??3=AY8_?V
M'QM?!9L:?MU%\P502P,$%     @ TX %69E<G",0!@  G"<  !,   !X;"]T
M:&5M92]T:&5M93$N>&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M
M3A^%$5B-;'EDD81_OT<V$,N6#>V23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R
M>&#9+]O6N[<OWN!7,B0103 9IZ_PP JE3%ZU6FD PSA]R1,2P]R"BPA+>!3+
MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,!
M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K
MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2
MBW <!.!1NY["G?1LOZ1!";2C:=!DV/;:KI&FJHU33]/W?=_KFVB<"HU;3]-K
M=]W3CHG&K=!X#;[Q3X?#KHG&J]!TZVDF)_VN:Z3I%FA"1N/K>A(5M>5 TR
M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$
MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7<K_WUE[O)I#-ZG7TZSFN4
M?VFK :?MNYO/D_QSZ.2?IY/734+.<+PL"?'[(UMAAR=N.Q-R.AQG0GS/]O:1
MI24RS^_Y"NM./&<?5I:P7<_/Y)Z,<B.[W?98??9/1VXCUZG LR+7E$8D19_(
M+;KD$3BU20TR$S\(G8:8:E < J0),9:AAOBTQJP1X!-]M[X(R-^-B/>K;YH]
M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M
MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZ<TT#PE"\D^DJ1CVFS(Z=T)LWH
M,QK!1J\;=8=HTCQZ_@7YG#4*')$;'0)G&[-&(81IN_ >KR2.FJW"$2M"/F(9
M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+
MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T
M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+
M.7\N?<^E[[GT/:'2MS<C?6?!TXM;WD9N6\3[KC':US0N*&-7<LW(QU2ODRG8
M.9_ [/UH/I[Q[?K9)(2OFEDM(Q:02X&S022X_(O*\"K$">AD6R4)RU3393>*
M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.W<DOJMI2^M28X
M2O2QS'!.'LL,.V<\DAVV=Z =-?OV77;D(Z4P4Y=#N!I"O@-MNIW<.CB>F)&Y
M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_#
M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0
MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR
ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC
MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYN<KGHB=OJ7
M=\%@\OUPR4</Y3OG7_1=0ZY^]MWC^FZ3.TA,G'G%$0%T10(CE1P&%A<RY%#N
MDI &$P'-E,E$\ *"9*8<@)CZ"[WR#+DI%<ZM/CE_12R#ADY>TB42%(JP# 4A
M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF
M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.'<YMZN,)%K/]8UA[Y,M\Y<-LZW@->
MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_
M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]!
MU4#E/]O4#6CV#30<D05>,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04
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
M!^#^DG.U/]$O*/>])_\"4$L#!!0    ( -. !5F)#,AA'P<  ,@A   8
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
M<RJHA[DYN(&T >;^2@A]/[%'@^XHF/P%4$L#!!0    ( -. !5GC%_%N]08
M !8C   8    >&PO=V]R:W-H965T<R]S:&5E=#0N>&ULK5IM;]LV$/XKA%<,
M+5#'?!'UDB4&&MO;.J!KD;3K9\5F;*&2Z$ETDNW7CY(5RR)/M-OIBRW)SQWU
M\(['1V==/<GB6[D10J'G+,W+Z]%&J>WE9%(N-R*+RPNY%;G^Y4$66:ST:;&>
ME-M"Q*O:*$LG%&-_DL5)/II>U=<^%=,KN5-IDHM/!2IW6187_]R(5#Y=C\CH
MY<)MLMZHZL)D>K6-U^).J"_;3X4^FQR\K)),Y&4B<U2(A^O1.W*Y8+@RJ!%_
M)>*I/#I&%95[*;]5)^]7UR-<W9%(Q5)5+F+]]2AF(DTK3_H^_FZ<C@YC5H;'
MQR_>?ZW):S+W<2EF,OV:K-3F>A2.T$H\Q+M4W<JGWT5#B%?^EC(MZT_TU&#Q
M""UWI9)98ZSO($OR_7?\W$S$D8'V QO0QH":!EZ/ 6L,V+DC>(V!=^X(O#&H
MJ4_VW.N)F\<JGEX5\@D5%5I[JP[JV:^M]7PE>94H=ZK0OR;:3DUG,E_IL(L5
MTD>E3)-5K/3)G=)?.A]4B>0#^K@515S%M41C].5NCEZ_>H->H21'GS=R5\;Y
MJKR:*'TWE<_)LAGY9C\R[1F9H0\R5YL2+?0=K #[N=O>=]A/]"P<IH*^3,4-
M=3K\8Y=?((;?(HJI!]S/['QS!M'Y?Z,O?GCTSF2P0UZPVI_7X^^S5'&J*\&C
MR'<""N[>W*_-JVKT. T8)>'5Y/%XRFR4'S(6=5%S&T68Q[#?A2T & U(R ^P
M#E/OP-0[@^E2EJI*=0?CO1M^/'Q$"#<8VRA=LSUL,+91S \"SR ,H +O:(X[
M?/F!+W?R_:V098FVA7Q(%$236X-RCV!FT+117D@C,[ V*@HXHP9-&Q5&@1_
M-/T#3;\V8STTFYJ5KY%XWE85#BQ1OFNJJDWZLMS&2W$]TKMP*8I',9K^_!/Q
M\2]0?1C2V7Q(9XN!G'4"$1P"$3CS[2Y.18GT'J&WK>*;J$("12*PUTWH8[.>
M0"AJ%HJYC>(\\HV5N@!0'L<]JRL\L V=;&_U_,7%<E,37NEBDLIMM8]"E$.;
M#&5&#9C9(*(KJ$'8!GDL" R^  C[/DPW.M"-3M!-LOM=4=9:X2U:BURONK0F
M'Z^T7$E*5:W"1["@1C8U702-&C(#4%X4$6,&;!1C5ME= "CLT9X-A.!60V'G
M++S/59ROD_M4H+@LM;J/,UFHY-]XKX7U9.B<R,=:IX,R"5MWY9L1G@$@0HDY
M"R#*2GP 13GIR01RI"3)&1NI/*ON-JZ,_8.;R0_!?.I9M&U8Y/F>N0 @&.&D
M+_RT)4Y/A'\I,X%>IWIC?8,>"IF]S()6S"![:I>>T#,3'T!1S$.3.X *0ROD
M-FI, J^GV)%6)1*W3/RH-J+0#P+["6@B_@;DS(!J9XHG #0.F4791K'07.J0
M*UTY20_C5BT2MUSL!OM>Z&=U\3(!*G[N27=;R?G8E'LS $4H-:4C@&+ &K=1
M8\:/BFN7?BL>B5L]OC\P?5G?Z/6]KOI:3,)AM\4="0+?9 Z@F,T<0!'3UP)
MC0F/6 _S5D\2ITJ:_JGK>G(<?)"N;SVC>#0R50R &A-LT;51%(>121?R%85]
MU;Q5;21PZF>++M(E33\F99G>TLI-7(!;.G%JP>\5U(-ZFP_J;3&4MVYX6IE)
MW#KS)BZ3)1B!O5UXE _XPGHN;U#'66.E'^0(6^EGH\8=6)=?JRN)6UC.DW2G
MP+;036-YBF%TFB'DR&9HHQP,:2L:*78NL*]U#U.LQO&CU@IKT5E;)=I5/3DE
MJZM;/1,H_Z'U2)W"]7O7XZ#>YH-Z6PSEK1O-5OQ2M_CM78_4%IV4A0%CUH,.
MB&2<<F8F+H@,_,C'9@<)0E*F;X#W;!"T5;W4K7H=*Y0"FM3#481-23Z#D#V<
M09\!.][J&LX TLVYE;O4+7?WO0Q'C]!M_]WK;4AO\T&]+8;RUHU$*\/I.5U;
M5R0\N_7L4=]*0!O&HQ!3,_MLF):>W.K8@CC:JSYIJ[NI6W>?W:6F@$CVJ6_V
M$T!8:#Y&S $8(Q2;3]8@C..>%BYM-3=U:^Y3O>K&O-M&P&85G$$P&K' )&O#
M0I^9*;. 8 3W*6[:*F[J;I3>BOQ43@^JK@?U-A_4VV(H;]U0M.J:NM7UZ>IB
M-U/#B!,S[P 4M],.:/'Z@?4O"03S>$1[TJY5VM2MM,^O+';WE(:<FIR!'JNN
ME"9G&\6YO=( 5$1Z6CBL5=[,W:X]554:\\[6@<W_MF8 BC/?W#@ %"'$:M<
ML- /3::3H__Y,U&LZQ<L2AV[7:[V?^T>KAY>XGA7O[I@7+\AES,"7)^3R\7^
M%8W6_?Z-D0]QL4[R$J7B00^%+P(=E&+_$L;^1,EM_9;!O51*9O7A1L0K450
M_?N#E.KEI!K@\"K,]#]02P,$%     @ TX %6<U,?8.4"   <44  !@   !X
M;"]W;W)K<VAE971S+W-H965T-2YX;6S%G&MOVS@6AO\*X1WLML"DEDCJUDT"
MM#87VP%F4/2R^UF1Z5BH+AY)3MI_/Y3LFN;%5!0<3[XDOI OJ?<<DWIT9%\_
MULVW=L-YA[Z71=7>S#9=MWT[G[?9AI=I^Z;>\DJ\LZZ;,NW$T^9^WFX;GJZ&
M3F4QQYX7SLLTKV:WU\-K'YO;ZWK7%7G%/S:HW95EVOQXSXOZ\6;FSWZ^\"F_
MWW3]"_/;ZVUZSS_S[NOV8R.>S8\JJ[SD59O7%6KX^F;VSG_+:-1W&%K\+^>/
M[<ECU!_*75U_ZY]\6-W,O'Y&O.!9UTNDXM\#7_"BZ)7$//X\B,Z.8_8=3Q__
M5/_/</#B8.[2EB_JXO_YJMO<S.(96O%UNBNZ3_7C?_GA@()>+ZN+=OB+'@]M
MO1G*=FU7EX?.8@9E7NW_I]\/1IQT\,F9#OC0 6L=<'2F SET(%H'ZI_I0 \=
MZ%.G%!PZ#(<^WQ_[8-PR[=+;ZZ9^1$W?6JCU#P;WA]["K[SJ$^5SUXAW<]&O
MNUW4U4J$G:^0>-361;Y*._'D<R?^B7SH6E2OQ;,Z^[:IBQ5OVG\A]N<N[WZ@
M*_3U\Q*]^N4U^@7E%?JRJ7=M6JW:ZWDGYM6KS[/#'-[OYX#/SJ$L1<X,HUAZ
M+]R]WZU6>9]S:8$^IOGJZD.%%NDV[]+"HK5T:WWBG?ALB>-G:5/EU7V+7KW+
MLEVY*P97EGR=9WGW^HU%F;F5O]3&A.8B5,=XX6.\\*!#S^B\3XNTRGB+T@YU
M&X[N^'U>]5/M7UCR[ TB_J\(>QC;XK#7#@?M?@EYN,7>]?SAU&RSB4]\S_/5
M9DNSV5428JT5LXAAGWIR3,4#<O2 /-.#5R(1VTW:\/;UD_S8CQ,H?N  AU&D
MN>*<4+^8OVVW:<9O9F*U;GGSP&>W__R''WK_MN4@I!@#$E,"08^!H(,Z.1.(
M#U4F-J>6HU?"Z>'1ZWXIL"T7-O<IH \+2+$EI!@#$E,B%!PC%#@_*D,HKOJ=
M=(6RNA2G%VW:+Y:V<#B5IH8C,#Y9)";Z(@(Y(AL94;$O/-H7.NUCWWF3Y2+!
MQ2:8[7>IMG<4U=O>1;$"52OTP-NN7WQ$FRUOAG,WL3H-;XEI=TV>]7O'OM^N
MRCOK#NF<QU3S0\,*7[<><CSF'$\Q/CH:'[V \:?[@RT(D64[2&(OT38#Y]2G
M+C608@Q(3 E9? Q9[%YJTL(,U[JI2[2N"\$C5^+%[>ZNR#/1:LT;$;E?4250
M2/3Y^0+BW_LEBEL_(K%Q,D&TP,3F$D##?N=74M]Y&%,=MP\9V+,_.5J9_'U6
MCB5]8B9]' 6>IY\8.J<\->LAQ1B0F!(JWY, Y3F#=:"7O<,H;]N=6'3$8H1X
MN2WJ'YP?XK?=-=FF/UG:BK-7*R0YQYFZ!QS43N,:Q_I' 71(-C*DZN\)H/KP
M_HXE_6%,9<O"7NR'6M*[YS8UZT'5&)2:&A<)HKZ;1/\0ZTU1M^T0BQ[#Q!Z<
MURNKVTZER9D-J;8\J)UFPI6?Q%HBL-%FJHL29?UI+,O%R8MX^-NN$N3J#>1*
MK)82$^7U[= W\=://$(C?14PVUWYPJ](]\"B%\112,Z8(#'2=S*0U00-Y<<-
MH>8^1F@0$P_KMH"B(J@:@U)3 R%IT7?CHO/JTN]I<[R:8@]!\(2<-#'-#Z.0
MAGI.FNU$3@9F3EKT@M /SVT[DOQ\-_H]^2+3N"TF'F&"2>"%@6X.))4M0=48
ME)H:#LF#?G3)2TT^)&8M0-66H&H,2DV-DX1 ?X0")UQP<DM-#HJ)8G[LQ?JZ
M DI_8V.J)DK\\]W\]_===G)/9'((3)8T+CR!CLC<(ZH5%DETV$UT+W/Q"9OT
MY'N8ZC65A7OR4Q<?4#4&I:8&3J(BO@ J6F,!"6H+;,*FB>*@0[*1(55_3VJ/
M;N2["(ICDZRL*.Z>V^2\AU1C4&IJ7"1$8C=$3D!QM]+DS :MBV(;A^K7(=E8
M*]5#R:!X.H,^A3L/LD[HP2:;6D'<TLX*XC8]!XACR7]X&O\]!\2Q261G0-P]
MF<G9 UI-A%)3 R'I$S^7/K7;&NPA",V<I+KYEJ)=1".]W=+6+HX3JJ>DI5E"
M0GINSY'@A]V5P&?=[&%WQ5+>(Z'G!;'A#2C?@:HQ*#4U')+O<'Q)#L>@R >J
MM@158U!J:IPD0N*1$N($#G=+30Z*B60D3A)]60'%P+$QU=O,) B2EP!!ZXUH
MH+4_8J*DCAN@ S+G@*KY$N:(&^9>AL*)"4XXB'%@W! (6A@$56-0:FK@)"62
M"U"B-1:@94-BX4R/ZJ<[H&.RL3%5AT_N?W7SWD4XG%BJ>UZ4Z/"Q<,]M<N;#
MW@Q[B;MAB61(XF;("1SN5IJ<VZ E36(II7JQMH.SL5:JAQ)!R70$U;"36@VU
M%!_U\WIB*19&21CJ)R>6=OV-@$1WP-;,"Z,S-P4027]D&OV-8+C=#UO541QK
M1&/=%="J(Z@:@U)3 R'ADSP7/K7"KST$T1-2TH12/^H+XGI*6MJ%81SH*6EI
MEA :G;DR1"3W$7==[UGE<+LK9LT,DRCTX\38:4#Q#E2-0:FIX9!X1Y)+8C@!
M)3Y0M26H&H-24[\?(PF2N@ER"H:[I29_'\923HQ#[6+Z$G1,-C:F:J(D0?H2
M)&@- 6C=CUIN,M7]!P4_YX"J^9+FJ)OF7@;#J0E.29CHM+9PSWWRM[Y V0]*
M38V;9$1Z 4:TA@*T8DAME&E0..B8;&Q,U>&3+S^Z:>\B%$XMI3T;A;OG-CGS
M06]BA5)3XR()DKH)<@*%NY4FYS9H/9.:=$EQHL$;&VNE>B@)E$XGT*=0)WU"
MY='2QDKA-BT+A5N;G:=P*N&/3H._YU XM=4<K13NGLSDY &M.4*I[0,Q/_FU
MBO['2 0Q"I9L4<'70MY[$PFWFOWO>^R?=/5V^ &+N[KKZG)XN.&I8)R^@7A_
M7=?=SR?];V(<?V7E]B]02P,$%     @ TX %6<JC5PF'!P  -R(  !@   !X
M;"]W;W)K<VAE971S+W-H965T-BYX;6RU6E%OXS82_BN$KSCL O5:)&59RB4&
M=KU7=(MK$337ZS,CT3%O)=$E*2?IKS^24B1+I+A)X7M))'DX_&:&,]^0TO4C
M%U_E@5(%GJJREC>+@U+'J]5*Y@=:$?F!'VFM?]ES41&E;\7#2AX%)84=5)4K
M%$7)JB*L7FRO[;-;L;WFC2I936\%D$U5$?'\B9;\\68!%R\/?F4/!V4>K+;7
M1_) [ZCZ[7@K]-VJUU*PBM:2\1H(NK]9?(17N]@.L!+_8?11GET#8\H]YU_-
MS9?B9A$91+2DN3(JB/YWHCM:ED:3QO%'IW31SVD&GE^_:/_!&J^-N2>2[GCY
M.RO4X6:1+D!!]Z0IU:_\\4?:&;0V^G)>2OL7/':RT0+DC52\Z@9K!!6KV__D
MJ7/$V0"MQS\ =0/0=$ \,P!W [ UM$5FS?I,%-E>"_X(A)'6VLR%]8T=K:UA
MM0GCG1+Z5Z;'J>V.UX4."BV OI*\9 51^N9.Z7\Z6DH"O@<[(@_@!QUQ"9;@
MM[O/X-UW[\%W@-7@WP?>2%(7\GJE-!JC<Y5W,W]J9T8S,R?@9UZK@P3_U B*
M\?B5MJ(W!;V8\@D%%?[4U!\ CKX'*$*Q!\_N]<-Q  [N/8NM/CSG6>.TO77:
M7O *Z,P31+'ZH5VZ3#'J]5JK-?9K-5E])8\DIS<+G;:2BA-=;/_^-YA$__"9
M?"%E(P?$O0/BD/;M+[H(L3KG%07O2B[E>Y^UK8K$JC EY[1%49I=KT[G5KA"
M2YBE22\U@K?NX:V#\?E8_%>G5[O&%=<E*>=USDH*ZBEN\[-YF)N('@4_,;U@
MP?VS-Z17/BO7EXSIA92-G);T3DN",?U,M=*<D;8$UP4@%1>*_6D?^"QOU:W/
M0H=QO)[$UR.$DLP?WDV/=/,-I'LJA(Y3%TI%GOSYMG$F7^)H C XU5]T>=H;
MD@8-N5,\_[HT5%4 ;8GF;]FZGSZ9:^JS*74=FF;3K/()8>CW>M:#S8)@_Z7S
M!6AL!9-'+DEIV$-GC,X3]6S7"_VC84>3=/:.U8K4#^R^](<F<Q"NXXD1K@CV
M6P"C@1&CH V[@\9$#;OM"1/@1,J&&CLH$?52=T*@9.2>E4P]>TDOJ/RMN=YI
M.[</HK/E.3;QC/1AF)NLB=+82*2DN@*::+S8I:O8][;@::-)K@,FF5EPWLK6
M370I<R^D;>P6-+@%!2/_,<]Y8_A USC*3D2O2Z_-R!>4=+(R/5(IVLRMSJ&K
M@$'.[ECU1%OJ,A$LJ:X-_@8,.Q"2>)I!'B&4P9DZ  ?RAV'V_Z(QUHJ+F2ZG
M&SU*W"2%4VRN%$JC&6:  _/#($=J;&%*Z(:/."%#: K.(X6S9#.#;J!8&.;8
M6T&/A!4O];W-3:X.5'3)ZH7L<N@2)TZL/5))-H=XH%H8YEJ[^3/5HI'TK"FR
M"S.$V4.]CI-=F?5<^1L8%88IU9/GNN#Q>IDWNF6HE1>L2Y=)C*:=C$=JD\R1
M*AQ8%89IM0=\),^S5<FEPB5<9XY#/6))-M-+HX$T49@T-4+1Z Y% Q2\+.V:
M%;2TF\G9/$,NNRWCQ&E4?&(81S/+  TLB()TTF/V)-H9%7J!0[=Z1=.FT2.T
M7&=G'<P8]L!2*,Q2O[QV*^)%[N&N.$J2*7:/&(ZCF4J!!O9";]L4MTSV"M@7
MW15?2MO8"0,UHC UWC8B/QC.GN^.O3YPR7"9I=/\]DG!*)[I.]# F2C,F;>"
MYY067=QT:T_?B-YE2^A@_W]L;=% O"A,O%_ZW<A+5VPK0\%4(V:6I8=/UYNI
M51ZA;*:'00/GHC#G]E6@D7:3^_I4\K NC)"#VB<&8S2#>^!>E+ZI NQ93>K\
M%;"#E/[F"G A;6,G#'R.PGQ^2YZ[P]6ZWU9ZC0ZJ>;/1'NI?1W,\B@?NQV'N
M/[>FYHJ&NA3LX7*X=KCSFV)CJ /EXS#ECZL8?:(B9])6,KTCJ#1^:4Y;-)N:
M#:__>-9E]6D9\XC,[:?PP/HXS/ICY+I) 4S*1J>.B[Z7H-6QY,^4=L^/'>^
M8TF\AW78P_J1LV'T2*7I3%W 9Z?EX7WMV+Y9VX@"%1%?J3==PE.\^>S<W1CC
M.#EK^<>6#O2/OWTN;BOWNZYTOQ]U<J\MB-A#]+%S/N:10ED$TQDCAG8 A]N!
M[G!?V"V>9A]KD&D"[(7I!$ZZ1:C]&S_LZP76Z70SY1&+(4IG6AD\\#P.\_QN
M#BM8@GOZP.K:>-]T-U0P7G@M<#D]@1'&4PM<,00S-$/^>"!_'";_D 74;&*"
MV%UFW^ $3L^O/&()1G NT8<& (<;@+OF>"SMNT52MOA--V!.C/.22]UI>3%?
ME/TOI6WL@8']<9C];?3L$<^>"W,&3O4L_H+F,C:,G/VQ3RJ;JU/Q0.OQ-\[!
M1S!G-_&Q2]4(;J;MI$\JAG,8!SZ/PWR^(T=FUM%YHV[J4F-?_=PWRC0DX%D7
M*V.(%SYTWT ZX%V9:0%=G;V"KZAXL%\F2&"/;=I7V/W3_NN'C_:=_^3Y)WBU
M:[]A&-2TGU3\3(2N31*4=*]51A\VVIFB_4JAO5'\:%_TWW.E>&4O#Y045!@!
M_?N>Z^:LNS$3]-^*;/\'4$L#!!0    ( -. !5G&EGA7W@8  '80   8
M>&PO=V]R:W-H965T<R]S:&5E=#<N>&ULK5AI;QLW$/TKA!H4+:#J6,F)D]@&
M[!QH K@-XC3]3'%'6B)<<D-R)>O?]PVYNY+C).[UQ5I><[QY,T/Z;.?\IU 1
M17%;&QO.1U6,S;/I-*B*:ADFKB&+E;7SM8P8^LTT-)YDF0[59EK,9H^GM=1V
M='&6YM[YBS/71J,MO?,BM'4M_?Z*C-N=C^:C?N*]WE21)Z879XW<T W%/YIW
M'J/I(*74-=F@G16>UN>CR_FSJR7O3QL^:MJ%HV_!GJR<^\2#-^7Y:,8&D2$5
M68+$SY9>D#$L"&9\[F2.!I5\\/B[E_XZ^0Y?5C+0"V?^U&6LSD>G(U'26K8F
MOG>[7ZGSYX3E*6="^BMV>>]B.1*J#='5W6%84&N;?^5MA\/1@=/9-PX4W8$B
MV9T5)2M?RB@OSKS;"<^[(8T_DJOI-(S3EH-R$SU6-<[%B]]D;#T)MQ97;<!:
M"$+:4OS>D)<,6SB;1JCAS5/5B;S*(HMOB'PLKIV-51"O;$GEW?-3F#?86/0V
M7A7?%?BVM1.QF(U%,2N6WY&W&'Q>)'F+_]/G+'+Y=9&<.L]"(Q6=CY ;@?R6
M1A<__C!_/'O^'8.7@\'+[TG_=P8_(-)%$O.)>%"T^,")8TC<[$.D&F-2E77&
M;?9C\<:JB?CIQQ].BV+V?$?C]#5_+KJ9-GPYXUH_3+&>6%&_],+5C;3[;O5G
MD-RV:^B&>=FF4H?H]:J-&-=4:B4-\F^K%<:H3DE61&&*J!F1/6K@ 3X#4BI6
MH@4;?8I,*53EG=6*11)2&O*CJ%Q-$_$GB<:[K2Z!2>O%:T.W.KI650CFD^5S
M\<ZTV9I7%KI@[/*TZ&9#!F@L=I56E:C(-$(A$SR2.NSK!JD<V"R#[XI*%->Q
MD(,IT+J!IP$U:O .ITO-41C#.>_:396,*K5'31-!FNRYHN1_&TAHFV!@7S!G
M4'*UW:!X*M)-Q@0ZE,<@Q7;M72VV,JC62 _#'4!*WAUL% K4T2KT%J"P)Q5_
M6!V!Y$V4B,=$_&[%#37P?T5>G*94G4,@H>Q^;F%O#K4,@6("@4>7Z[5Q'RE$
M(;7?R3U4D?32PI]53\:>7(>]ERPP)%AZKDR.1&F$1S3.1[DRQ!9 (K[$EA=C
MA4 GCH0OV-&' ? T&M1W?G^ /R1>H)482(""S+HA)@GM/F8$ZYK$P,39-FN_
MO]H[]O+ZU4#YCGG^(;!AS(XX:[W>:"N-V2/PRGFX+7D?6'"M+?!S46;>)RE6
MPLX'TQFM\BU2#QTZU=SYTZ<G$_&R]4PD;O4IJ@ 3?FGT'? %WOD-=/06I&X+
MYT.["G 8WAH(9[DM+&5>9#GI6)GQY_W:1I<!OB]PS)%!IV4KX!ZG@:>#TTDE
M1_XE&;F3P.9H92(^P/O#^;N'<!WIV/GW\'ESS/1B-E\D0%:TD5:4CN4/Y(5%
M791[J=>9!UW$4]I<MANT>5$P*O.,KC(N=#8A]Z(&<9H6<"MDSII2))!"C(%R
M=0TO<$U0G_K"DQW--& 17"=X_W(\+V;CV6PF0B6YJ'Y%!A=">4]9XYGNV/YH
M/IO@/)I#EI&HF*H+5U6+.R0HK(C*KK0\X(%LL/U6XVY%(,:CQ<EDB3N.,2G>
M<AVA!C>(5J6H)1[OO$X#%&Z%8A5S+?Y"3C%YVHM)I08E)<A\":1;W&9#5[!>
MT\HGGA=/4L%:'(//W/B:S<7X],G)?T5Q\0]1U.&.#8\6R\GCP<6_!]0X6:@#
MWZ8Q8-@&D4>HP).!OEQ*L44QEU9[P:W2H=KHN$]9P,%=:P_N?@:*; -,(PD&
M[BEUDXJLJ!W6AU);270WE X?4]VPN+1K&]I<\_E4LBOMLBYB)J(4I!*H>0E5
MR0#L^(M;_]( 9T9*[G.[!]:;?&/)!0HN>2B%7"Y#45HF(=CA&2=HY]X&7=PX
M.7Q G/'+Q37N&\Y2[#X24^%^3UQUMF3;H=,B-CZWS#7$H)!U6 Q-+GF5H+B+
MPCV_#D!TH43?"-SX4>E7G=T<K'SH+@H**(=[ON0HKTA)OAH,ZDL*:,@"M99N
M*]F&WHXUWW6X606PH6154O5)%K,?F.=B"F(<D8'3SVC.! O$(+9IO:KRM0KZ
M/91*,^1);QPS:C!)N2WYS#)F*7FE[R"2ND-(G/!XT&T135:4JZE'F\]?&IS.
MK>XC(09(>W%9XM'$%\>NBTCNK2[!L><HD6: 4;B3\!29QO#!=%5(XY+2%8B3
MZ1 8P18G58 (U\H^W'QX8/+4?5,R6I=IRR$J=T1S' \8.O\M""=?>UI,C]Z"
MJ8WRBY<11B#SLW"8'1[5E_DM>=B>7^37TN-Z$82A-8[.)D].1L+G5VX>1->D
ME^7*15QNTV=%$M6'-V!][?#*Z :L8/A7P\5?4$L#!!0    ( -. !5FE0D*X
MS 0  '8+   8    >&PO=V]R:W-H965T<R]S:&5E=#@N>&ULK59M;]LV$/XK
M!Q4H6B#SBYQF06(;<-)NS88.05ZVS[1TMMA0I,J7./[WNR,E16OC8,#VQ9;$
MN^>>.]X]Y'QG[(.K$#T\U4J[159YWYR-QZZHL!9N9!K4M+(QMA:>7NUV[!J+
MHHQ.M1KGD\G)N!929\MY_'9MEW,3O)(:KRVX4-?"[B]0F=TBFV;=AQNYK3Q_
M&"_GC=CB+?K[YMK2V[A'*66-VDFCP>)FD:VF9Q?';!\-_I2X<X-GX$S6QCSP
MRU6YR"9,"!46GA$$_3WB)2K%0$3C6XN9]2'9<?C<H?\2<Z=<UL+AI5%_R=)7
MB^PT@Q(W(BA_8W:?L<WG ^,51KGX"[MDF^<9%,%Y4[?.Q*"6.OV+I[8. X?3
MR0&'O'7((^\4*++\*+Q8SJW9@65K0N.'F&KT)G)2\Z;<>DNKDOS\\D(XZ<!L
MX-JB0^T%UVH^]@3-!N.BA;E(,/D!F!/X8K2O''S2)9;_]!\3I9Y7WO&ZR%\%
M_"WH$<PF1Y!/\N-7\&9]GK.(-_NO>2:8XY=A>$3.7",*7&0- ]E'S)9OWTQ/
M)N>OD#SN21Z_AO[O2;X.\X?Q"/D(7H2#NPII%@I3-T+OI=Y"T"*4TF,)A:'=
MTRX].:-D*?CS1FJA"RD4.,) &DGOH!*/"&M$#52(1EBRDSH"VY*LD?K85_$]
M:,]A&BL)I%'H8(L:K5!JS^O8^.3KB=B]CD1N.8Z#=V_?G.;YY/S7U>HZ/D[/
MWP,)$5E[M+(>,",.QL8X0I?0!.N"T!Z\B; V<%A>L;@-*A8B5H87;S]=CF 5
MB9._VA_QUSV4!K3Q%*I0H:22*=4Y2)W$,*H*86Z,\61*$2Q^"Y)+L=X#DXYD
MN=0*:4M>JN,(KE+FII&: 2E&+33I(2\?Q;"B_$I"D,K^+O'A1'UE')6YD@75
MV2*Q)5*JS;((ENJ]?1]W4I;(I#06Z!Q);Z0E8".DA6;8&WV"WY=WF/+SSK>U
M*4>QJ0B(I-!%<$9Q\@GJI K(J@ TT]C/]%'+V?>T)/6#U*4L! LU<^D0:1?7
M"/C4D)1S/[8!]B@L0W,Q/A)(O48+LVF'3U8Q3[T'0^;/7=/0KRF'ZYO@@TV
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
MTP(8SU0AT8H*7"0@K5@*3@;RTD 'I'$9V4],*4Z+%)'!$$^1X=SBFNU%03_
MN$M3%(F6KD6\9AON>,1*DFJ*K:K=ZK.G3Z:A'SW?LJ/US(="LQP5)OU(MD+A
MFHD;_EI!#56B%-])3<.6*L4,:@X:J-_]^\5E.$CV&\K<,@Q/:,*SLV1^"1I3
M>S-^K94QCQ8\SY2VXCMW:;PFGG*MKX5<W7#%<9$5J7.&FO8>?>:9\V%5&-QN
M\Q<[ RU4TL9&7[E?5,7S I9""@O[*=XC2??,?MW)G%4.4X^#D%T#US>$/19X
M_MAOC<-9>S29^*0^W:67L,7;&F"'VY$?>$$XZE!GLZC+&87LU-U:Z-4\CLM
M;',%8=>^;>C;:/7Z1H*&U!V568N\985_9WOJWPAWR?<[Y+$W\;N^&PZ]<#;&
M;;O$ETM.D0[Q6JI4K:X;GND.04&T55#D16'8W4=O/)FR\V)AE<6<^B-G&(Z]
M*.AB!X$WC+I61$-O.AFS3Y*7GOU['?="<TR^/(,?!_W,&VW9L5T>4W+7<8$O
MU*2="G;]COS)@R40[X4[D-WA<O=WCXWH<"8MPIUCV6-#/)!I-W#^%\G\!<20
M+3"N,% HH7?5_)/0?V-"#Z;MA#YLCWY-0@^[ 1CZHT<D]#;J70D/2=S!XQ+W
MR!OADH[*(V\XG=V?N&>/2]RA-XFZ@@+?"\>S1V7N<#SM;KLWBKJ'$>&M%$5_
M$G>Y<[/N[N^20+P_E;C#T:Q%N'TJ>W1XD]8+]U9>@2LT!&L:*@SV@KY?%PSX
M9M<,.)8,52EBUQJ 966%#%0AWWE 4TE B==S7X@UVXEEQ-7#D)"_K%OV_'[4
MP GYKS3S^^-=4 ]6; -8Y&B(E4Z<=V,5B14@HAB>HN-I#&!90)^]*FRA75G7
MV?*R4*)!;'^R3+ISG>QB<[H_>UNDUYA4]]M7Y5\N6T]G,^+9$LCXNIS2U+A%
M&@\C(DW:)'0W)$UOD4(JFC7P)=7=3=Z9>A'ZZL6MI+-7/_5JPJ[2O=Y[##Y-
M33W<-H5%*9>R0+BZEF4BR[&BSC!,,7_BL106R^/O%*P+K%D=-()BQ<RIK>9.
M%<=8:->$'$MY\HH$3*S%HCSA5_/S$S8__\3>J[[K'NS[J RI'/K/;ZIF4P7W
MK3;%!U<J/[M0N8A9-/++LPH"]U*@>XF4FZ=HIBQ5H(AY22T![J8NM%BM\+&
MGR\O*?WTG5Q<?\(-[4*U8=130)["T/^.G959'A/6Q7L"*# 3KA6PYK8F2V4Q
M"#0U%KX"^@S.24=T3(3::EA4@:,A)P\GV;*"P:TPY5IBB.LGDEO69W-T?UQE
MBM1Z;<$) !VK1!\UANMK:E*@VM1,H<_*IINS<@=,6RQ5^]P)CL)S)>GZZ6]K
M9PU:G4>\UU>NOVJ8.XZR"=E0FQ;NO.Q<WK"7_=]W7*^$)).7N-3O3T8]ILN>
M:CFP*G=]3/0_?$2XSS7@-:6) >>72MEZ0 *:QO;Q/U!+ P04    " #3@ 59
M&\(=2<0"  #/!@  &0   'AL+W=O<FMS:&5E=',O<VAE970Q,BYX;6RE56UO
MVC 0_BNGK*HVB9$70W@I(-&7:9W6K6JW];-)#K":V,QV@/[[G1-(::%HVK[$
MOL=WCY_SV9?!2NE',T>TL,XS:8;>W-I%W_=-,L><FZ9:H*25J=(YMV3JF6\6
M&GE:!N69'P5![.=<2&\T*+%;/1JHPF9"XJT&4^0YUT_GF*G5T N]+7 G9G/K
M '\T6/ 9WJ/]N;C59/DU2RIRE$8H"1JG0V\<]L];SK]T^"5P97;FX#*9*/7H
MC.MTZ 5.$&:86,? :5CB!6:9(R(9OS><7KVE"]R=;]D_E;E3+A-N\$)E#R*U
M\Z'7]2#%*2\R>Z=6GW&33]OQ)2HSY1=6E6_8\2 IC%7Y)I@4Y$)6(U]OSF$G
MH!N\$1!M J)2=[51J?*26SX::+4"[;R)S4W*5,MH$B>D*\J]U;0J*,Z.QDFB
M"TSA:DUE-F@&OB56M^8G&X;SBB%Z@R&&&R7MW,"53#%]&>^3FEI2M)5T'ATE
M_%+()K"@ 5$0M8[PL3I%5O*Q_TBQ8F@=9G /HV\6/,&A1S??H%ZB-SI]%\;!
MV1%]K5I?ZQC[7^D[SO!-682X":^9:@"W0*+H.1E+D)J"G2-,54;O4LA9'T[?
M=:. G?WS^/Y:$J4J#)>I^0!C"U1)K"OI@$M,,)^@!A:6((,'KC67]JEF.8&H
M$;+PA<W:'?B*,YX!49<YT)LCS7L2PD88AWMH'(9P+3]:VL@("T(N45JEGPZ%
M!]$>V@I"^*'Y$K.]I1YC!T@"UH4+JI%(2+&Q12KHY%^[,=;;QV(&]SPC;Y=G
M81 L7^]O$'3WL2Z#[U1/_2PM>O;JM2D#97FV<ZIQH[.3ZPFT&[V@M;4/W6I_
MI\GDJ&=E*W4WJI"VZC<U6G?K<=6DGMVK5G_#]4Q( QE.*31H=MH>Z*I]5H95
MB[)E392E!EA.Y_3'0>T<:'VJZ,9O#+=!_0\;_0%02P,$%     @ TX %60A_
MWWP' P  ]P@  !D   !X;"]W;W)K<VAE971S+W-H965T,3,N>&ULQ59M;],P
M$/XK5D"(2:5)G*Q-N[;2RHL "31M SY[R;6QEMC!=M;MWW-VTBQE71D"Q)?8
MS[T\OCN_7&8;J:YU#F#(;5D(/?=R8ZJI[^LTAY+IH:Q H&8E5<D,0K7V=:6
M9<ZI+'P:!"._9%QXBYF3G:G%3-:FX +.%-%U63)UMX1";N9>Z&T%YWR=&ROP
M%[.*K>$"S)?J3"'R.Y:,ER TEX(H6,V]TW"ZC*V],_C*8:-[<V(SN9+RVH(/
MV=P+;$!00&HL \/A!EY#45@B#.-[R^EU2UK'_GS+_L[ECKE<,0VO9?&-9R:?
M>XE',EBQNC#G<O,>VGR.+5\J"^V^9-/8AFB<UMK(LG7&"$HNFI'=MG7H.23!
M(PZT=: N[F8A%^4;9MABIN2&*&N-;';B4G7>&!P7=E,NC$(M1S^S^,:48L+<
MD7/0H&Y SWR#M%;IIRW%LJ&@CU",R"<I3*[)6Y%!MNOO8SA=3'0;TY(>)/Q8
MBR&)@@&A 8T/\$5=CI'CB_XDQX8BWD]AK\945RR%N8=GW[%XBQ?/PE%P<B#
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
M\E2B2F)06K4ET2X" [0<IL4;'G\MK2L!4MT<-O54/!DK@A@ZI3?VJ<4OF/)
MTFQ1I795?%1*TU8EF2WYOE8-;!MQ ]FVK1+NEMH^7P@;JYHFSO4/>U/,IR&.
MFL4#-@[:'/ O$<_O^P+'C3]$NH*,'09N)1GZ!:F>T_D&DPVW-D!^2\(/ZRK]
M<G-;6S00LY0:=&XP41!\+ D+A$3+:/4S63-..$\BZ?_"@:=&?308CUXU"F;\
M#J;<U=)6ZFY,FC+YL>$;./4WPL?5Q>W#,36^C KG2MH&5Y2HY_9OBFK40>(&
ML!7R,B7?#N5K%KD$:A0*.'2HPR.D6<:L@89WJ*N'B8(1V$KTZH*L(BT=4#@&
M"F0TEF)M%P<N4DEM^4U&![& ?-@]?K660M=$UQ2W)GEX%:'2*7V(.)SOUI>O
MLJRJ='@(&YB6%$\(3C\*MLAU &.U6RDGL%77'$U0G!Z_(FPG@PD^H.X"'U%L
M*&:-0=7XT'C+\(WKW=/G=W>=YL:N)/I-1%)C5:Q8JAH$5VP?YI;U1G+.4T3A
MJZFN>(:@FG;2R>;G*+;#1?\.I_;_3H<@C5L2AU^&@T$C!WR([U/.\C76G)4+
M[!=[://&4.M_EC<WE_WS 6)3TO:S2ZS:/96"HP.G)0KS9#7[OXAT]O#U^J",
MA<QDA;%\#.B.^IW1;H.)B05+LIFN%LC2%J<5!$Z>T_Q#70*\/ F5-!I,1@A;
M_YERV)RH.!]3C=$F5 LG9+XH:4DX_(0$KYS;GG.[TJN53IO'B;6VZ!@"*NHD
M(1"PRRE/HA'A^F RQZQ%)V"YL+)8;D^",$AM^M.,:ZNC8#VXL?]KHR<.M3C&
MD=/=U8Z KLZ=32<C3=49,#S*$'FJ^4:'A4$JJ1F"(2!@X!C/"8@VC@_K%?XL
M)VWBN<W8W#R(<,P*H]5C=Q;>QHZMJ5:^:((.;?Q%@WF]92 ^YC175V<MORV6
MS>5 U>/JY6L7#G5V-&?0@S.TE'H>K&D%?,4%%;HSRCXV#_FSA;DWQQ[]BJ$R
MZ=$(D&#M<;JQT5577/^ 6;C&-P^V1WST6Z/DDS6V_J"BL'YMSJTF[-8H?3 ^
M&9RM3K24V@5?5X"&:6B$1:;TSLM )W,)9D"Z5GUK#VRU+3,FOW9B'[$I2\R7
M:Y+K [,+9^/3EEG[#F?@<\QO%-AP89@^=<#'_.LW+9!P;H?Z![7.Q>U!I&)@
M-.>H3+D.MDXGN\>X?F=:LU6^G [&9]1R[Y;MBY7.:8=OO4!FEBL7TQ)'3/.U
M:34OI!0_>):FX:*+\#P]'O5'HQ'D?PJ)2A=#'>%D&SW)D=K5W/B$<8SORK9%
M$4#A3<+COGO7Q/RY_X<?*7U,Z0"^PT@;"I>$BL/?2I@_%F]6&3P=OVYV'B#9
MC^$&UAYWQ$[90RJ%SBOD_^1X).Z8ZCHO3_N 1_RN''SXH!)E[>K.D)H S0D=
M']Z>O!:?T:'XKO]K-45L$7UR?%2)?E]",)%:F H(T?;U8U?%I/_VF+28_$WT
MPKT' I$Y>7NVX@*:\N>I7L@PB>R[4Z2\KPZ8<XPDX0O14Y.L2#)4!E6-1Y]!
MI+B.$IXQB.'H/RU KT7[(QO&I^>4/NCE@0-)";,GY@L+,2HH6]\XV$X;6ZU&
M5Z)+5[Z=P4Q$&8.=9*W54?"9[\WJEM@7JVO'T(>I-G5>W=QF*%BFN.JV[L4M
ML__"]K?>*/?UU!THP%ZNO&WFINF+[K0&VWXE&[9^M,P4+'_//RQ$5)SA]\OF
M:?/K[RS\Z+E:'GXZ_L1<YX!0@JUT3NP)&WZ.#5^\*?@GT+GQWF3\<:G0G"PM
MP/O$(+FK+Z2@^4W\ZG]02P,$%     @ TX %665=!)$D$   G"\  !D   !X
M;"]W;W)K<VAE971S+W-H965T,34N>&ULK5II<]LV$_XK&/<8>X:6=<5'KIDX
MQ[SIM(DG3IK/$ E*:"A")4#)[J]_GUT /"39L=-^2$R1P&)WL?OL 3S?F.J;
M72CEQ,VR*.V+@X5SJZ<G)S9=J*6T [-2);[DIEI*AY_5_,2N*B4SGK0L3L;#
MX>G)4NKRX.5S?G=5O7QN:E?H4EU5PM;+I:QN+U5A-B\.1@?QQ2<]7SAZ<?+R
M^4K.U;5R7U97%7Z=-%0RO52EU:84E<I?'+P:/;V<TG@>\*=6&]MY%B3)S)AO
M].-]]N)@2 RI0J6.*$C\6:O7JBB($-CX.] \:):DB=WG2/T=RPY99M*JUZ;X
MJC.W>'%P?B RE<NZ<)_,YG\JR/.$Z*6FL/R_V/BQD^&!2&OKS#),!@=+7?J_
M\B;HH3/A_*X)XS!AS'S[A9C+-]+)E\\KLQ$5C08U>F!1>3:8TR5MRK6K\%5C
MGGOYVBR7VD'+S@I99N*U*9TNYZI,M;+/3QR6H($G:2!WZ<F-[R!W*OX @845
M;\M,9?WY)V"MX6\<^;L<WTOPM[H<B,DP$>/A>'H/O4DC[X3I3?XK>3VYZ7YR
MY#)/[4JFZL4!?,*J:JT.7O[ZT^AT^.P>9J<-L]/[J#^>V?O)?3!.B8N!N)>L
M^%W!R,7'6:'GDAS'BJ]*%/QR50$,*G?+L]3?M5X1$5%CKRM!GR31\8-M(MSM
M2J>R*&YATVXAG*J65LP!'7@2;B%+,1J+I;>7A&EFB@:!;:%SO!"RJB08XU52
M# 3(@.7 C71"EZE:$9,#\;X4D  L%,EW9X*X6Z@*#Z0 H3.,TKE6F9#6 @B)
ME8T2"[E6-%!4Y-K"&9'I"FC"[VK0,3D/-3,B#UR;62=!B47&?_2=ABHP8)8Z
M%3,PF&LG\LHLNT3H<9N) :D=JYDJ(QZWM"L*+6>ZT+07GA\V/PB[ED7-1,.6
MR5N_T6;-2H];27H60$5ZD\(>L/E>61EV9R ^D]2JP',6I =%XO;PUY_.Q^/A
MLT\?O_#3Z-G1#F]>B4!7@EZ+!ZB_$,K"%MBB1%K(FBU$6N@9BI(\2FTPS*R\
MT4&Q)Z82WA[\M/#)<Z=N5)5JVQ$U4KA[)JR"S<;4%;;2II7RD0%[2%]@344-
MV,(#ZR5:8Z"1;ZN/YO6T#$MHO6:S4# M1S:6*>@6BL184\H9K".%&TE>)FR?
MYQ". FW,6NDRF '1D6NI"\Q4"1DF;03;)?9'Z.6JT"DM5'89-"RAJ<'5EB7@
M4\]8GHF%V2B81]*PY3U89$:4QI';KV&><!\*^QKL-YH!1RT#530=;+VI/*M+
MA#!LO=-+XI44#RU7;&K8JIFI (ED.2Q*E^E6E(9QBKX9&:TN?3;"FQ<U0QOK
M)W3MF=T(]F:MSF]Y_2 ;3&Y6ZR+#XC#$M5KHM,!K& ZFKVJ"*/;M/->IZH =
MPY37BU4KR7P'L\>7TI3'#1,K4WK7RQF"*DG> ,XQ\C::DR1-$6'( N$"IX#-
M8.KO*7$A$) 0R..H7)&^6>1YK?D#JSIP%3 CB-E!7K8ULG/(:3W^8DUQJV05
MD0"1 #!$6L:3-87.& $NX;BT_#6E&6#J \V# (TZA02L*[]+ 6T%;7@%+ 1#
MUE6:LR]\7*M2LE(J^J"S&B,\9LUK:+-T2F&%R[@U;?")MAEVA#$:TBP,>0/'
M8+* M:PTWHC"!!5&M_A2:A+EVH$M=DXH8J,:VZ;0#;(>7*QJK 2CVC#6BUV-
M[EC%N;Y16=* '%ET'W9A&2DIT=NJWQ'(D/A(Y/T%H+H?3'V<OBL&Z,"HWWGO
M(@_>S<3S3]P"=58TG@G-2_V/)R4%]D]2$#BFC(+<4'<$\Y&D XXQ>E!)T#+K
M)<;VW/KP!RNNS W# C1+RH3W6\!0R5IE!P55Y'^JR?_8F<$H%$8@C0DQHL>P
MA!4I_OJW38"""7Q,G9F!X_%P=)YX)^PQ<#Y,AL,ABH*:-)E3.40&[FW-6Q=-
M(HM'E($=5RO#OK\ )-(D,,6V]H<N2R57T#94RS^L<9(=^8T")K5,P/HD7(8V
MC!. +NND#)EE6TR.+_8QB7&:3)V"9X=?+ !,6W".DS*F8B$6G!*A+>R*^K.4
MJV2[ZMO&H%?77X " Y+D]'@X3D28S\FC#3/%X6<#UQ'GT_%1L\*KZ]?T(A+?
M4<P%*R:O*_*+GH(\IUXH=>/:#S!;7?EHD'&4R7<5FGQW"F<!&0WH*WVZHW/L
M#='HZJJ7RNRC,CE[U-8]?,?<0E</VC!6N_=-F&XWI?'F3=!,?N6S^5V+W("+
M58&1G!\%O*3':Z3@[?8]:H6N"INPG6T3'0\'XAV2#4!PXG/=AU'OJ.8>XB//
ML5L@@D7*M)=5#P>EW9>%D\UL9XW_ L0?%X5?=_.4C]Y\WC9Y"I!2%M;X(F:'
MGS9<DWW%T'IOYG,?K._!ZD1P 99YM-^3<A#"]5PD)W#UV-^&5%\?XFN;OL8T
MYK]3O!<MA/PFVXUE R?,=94N9$R[0V'420I1TTE=(>>IOJE8@X7,7K$NM\-C
MDYX19-3.4#;KDPPN8[S+L^S'SASS0RRD[J ;JMH.5T!^3M\#[YG/N5Q=E517
M$%H,)\]"O7]E+"-1@D0IYN!D@-(NQ+O";%B%US52SYB[O^\DX>Q G-C,J,T7
MZPO;R]2CVJ!.VNE_X2=L K% CUG/TT:B'_U[^)X,"=DCUK='XI7K6S2]:"+5
M9,0O)^)3MSJ^0YZXP,]B=):<C\^[+RZ24>?%8_]^O%M+C]?'Z[KB-+#E;IR<
M75ST?I\/SRC]/TZWQD*PT73<_CQ/II-3\=F0I?2DO9B.N@1'R7@Z^:_$_P&9
MOW+;E@ >T4/.]P-<,_IT, D(M4WG=' 6ONQ0;$I:CM[;$Z>#R2\/>_FC?Z_U
M3:\KVUKU]DBV\LZ/2=_C4P*#G/R[Z]8Q+=[N__V _1']E=0^Z;D/ #H6E9QU
M[(=_CX;>0HE:KW<5O-&WZWS<4#> 1H0I7I%P=WO5;D>G7:6[(CV-QJT4VUA(
M^%2FNF#<4I2>M/#::-3'8<YM4#2;S$8(]7CI.T1WZ^-'*K^[5WSXSFTAYEW#
MV*X.?ZL1W4;BN NB1_VMNQC1V"<[!";)Z?0)?3KMO#H;G=*KL\ZK,?8>K\X[
MKT;G3WQ+2N:4V33^"B":!'Q:PM^7]7*[W;0CQ3B97@P1+RUL^]6277JWSUJI
MH$?:*<VUJG6[BALG3Z871^)JNVN;UXC/ZJ$L!3SU+$7X[IKLWM;\7E?J< ;,
M/^J!_(]1_'D[*&P'J]18%S+MGX>#"PA=%!%1E$25%](;GYJ'@P+5AS V+<H7
M"*X&]RXQ&IS?N80%1CYH@3_D7YCZ)P89QGKD(%F385F?[%**N^81(5GM%7.C
MLU]B[\RQ^75FF^I! OO#DD>M.AY^=]7[=3"X0UBW,6%9NV_=R??7_8ZTDQ^1
M=OKOI,5&7\6,OWM:]I6.C&RM6G8$X6Y%X*D-US1;&\7+DSW^/#[?LK^Y(=2-
MN2SUWE+N+0#,%?5*J0@*I4VI;ARG%P/Q23GM.\;B"FA.+%'"PO6;%-/AZ/#;
M$67Y<="*!L48K9:KPMPJQ9VJT$F!:VN*5NVW5):^8:UGJ 9!%4Z54@HPC[T5
ME#I N6,G;[AF1*B1_A3N:Z<+*<M.0[&7^K=G+]0.;)9B? G1+@C"W&--X,.T
M41Z9 UY,>MI\%% DU'LF?4//U%1@BJ/!:'N)LYTE'@@4_04&0.@YK/"J,JE2
MOJ_]3K#WZ"7W^NBO[P@"J6P]^RO80FQGIX74OF$,8"-2JPXIC+$^VOA$H<)K
MK]BZ\@=DLQH#$"3(?.:RRK@<9P=QV#^L3- ]#X=ST#@75G2*FB&'M7S$(\$0
MOH*7F4IE.+C,5,[[2WPAMW)%/'"UU%C.-,T.C9JE+&4XCX5JP%FJ0J''C;X<
M] $A0/ 2&'LKR'>@R''"[6>3?EN8@@(/_NFUY+.$0FYLK1TWIG+D5]G^5O\;
M[8\?X,AUU68]S6OPUK1I$_)KZ@&IC)O2D'4ABSQ&">JXT-F-G--QLNL<2;!9
MQU,UDHKR8XJ3W$2IO*3^]-B$7UV"AUSNTR$QM0)9JYDLW5&"W5B%HZ'?9/H-
M_D55A5@C$!F%8IT.JXM!(MY!?F[(#I^.Q\?I^G@XF@XGQQ_>7AY??OHL#FFQ
MT# ,)'[WVFO[L)2W]K_% W4ZS8:)48.J=DW$E,O64E$*<-N(I( 6UF2SF.5-
M@DP#F81/#OB B^_BL*E%X2XK+6GCL4&0[3-]AT#7M]2:4>D"$KXOT\%^>8<L
M[WAX-FWE?3/@31T<]41G^EN"QS8YQ%1S.L+AG T_M4P:<.;[#K&4H*V^?WN7
M,E/-^1=UMF3!D0)H8@LZ0H6S6K+.< =CQGH%V>BG24RPN#5,Q EFP1)E[W2V
MD#9=JZTM\V+X4B,W1>%/5P-\M*W1M['N>96Z2!^P1C[U5!PB+6\.IJ-4K54^
M3+Y5C:0Q[8H)1Z%VW^W6.QA+T9RP7X?+6J/IH3R*IM9EEA+4^[GC>NSLF4>-
MT$KR)\4;()\5%O5*D=$A.]PUU0SB7C%Q\?'%X>RNQ2>=Q</N[UG;Q]+F\@F=
M_/8"Y;]D8AJ8Z!^)]K:(SWDUEZ'<X>W$V"9>!&\F &JOD^B2L_X&3+L^D_1Y
MM&(T)"8YZ(W>W,'LDX[&(*A>^S/?#J^SBE)Q?S*#S"+'@%13 ,MJPHQGO,#A
MZ7?I<)I?EW_5UL$H50EX7U"G<X^;6*6^D3]0C/:7;C*Y1'SR)^ZOZCE=6_#Q
MA]8+^$:1!IM9VERQBD*N\NAX\P;I$)U=B]FMSQ_%G$Z^:4]HZ!543EAY[?2J
M#KZ!I3Z'E3E&OE.SJB8=C9HLF8[-. Q2XSA.0JH%I_1XX%$W'- 4E#3J/(]S
M('4X:Z.@Q%\I &+[ 8Z3F!5_;-Z,'KSL#ETFP]V EHK;QY/XS1 ;'T VY7P#
MY7*AESZ[N6[S#3*'5 ;]Q?M008E4LD3[DGP_8T;#"8$; L>Z/$8"7Z9Z12=Q
M)02Q3:!K[C%T;E%LV'LICRDH42J*B+ SY39*E3T.R'HK]7>M+*? D4%O'@!"
M.DBNZ%8-<-'?&\N H734CCBP0-+OKZAXE"YA '2.15<8* 9V%TKY'E_M#3.G
M5$+_H[IY65 \$M;36)]L=@[4NU;'B-Q1,R_7=Z66YEE3\^RWK[HTJY6Q?*;3
M= Y7G1WEXZ"U;.[-M9RWBXQ[JW@=1@&H5-CUIA]8['-#&B6>H(O06>T-LJ/,
ML#-,. +&>2@#H$ALAM7$S&:A.,/%.^;+[TR[?G.:W*Z/VM/6-'3G&V^8/S3*
M$-82OGREFHM)3278GNC%>PIS.AXM.8'@ZR:AFO"9/AT'LM6LY.W6J1RJH"=-
M%02*N0HF'6H[VRWN4+#:F)=[-784EAGE#Z1(-4X[KBVIQB"D"-;6QB%H=5.9
M<IX94C* LN8[0^'J%"5+37>J2<?:#,RTN=E@WT7<D\Z-:<R<\[UP\J"Z=/[R
M=/.VN7K^RM^X;H?[>^O PSE=+BU4CJFH&9\<^+9S_.',BN]?SXQS9LF/=&E$
M530 WW-C7/Q!"S07\E_^'U!+ P04    " #3@ 59H;VO@V0-   .,@  &0
M 'AL+W=O<FMS:&5E=',O<VAE970Q-BYX;6SM6UMSVS86_BL8-^W:,[3,BR1+
MN7C&3M(VG6WCB9/F&2(A"1N*8$'2LO;7[SD'( F*DB)OD^UF9U\L @3.#>?R
M 82?KY7^5"R%*-G#*LV*%R?+LLR?7EP4\5*L>#%0N<C@S5SI%2^AJ1<71:X%
M3VC2*KT(?7]\L>(R.[EZ3GVW^NJYJLI49N)6LZ):K;C>W(A4K5^<!"=UQSNY
M6);8<7'U/.<+<2?*#_FMAM9%0R61*Y$54F5,B_F+D^O@Z<T0Q]. WZ58%\XS
M0TUF2GW"QIODQ8F/ HE4Q"52X/!S+UZ*-$5"(,8?EN9)PQ(GNL\U]1])=]!E
MQ@OQ4J4?95(N7YQ,3E@BYKQ*RW=J_;.P^HR07JS2@OZRM1D; L>X*DJULI.A
MO9*9^>4/U@[.A(F_9T)H)X0DMV%$4K[B);]ZKM6::1P-U/"!5*79()S,<%'N
M2@UO)<PKK^Y*%7]:JC01NO@;>_U')<O-\XL2*./[B]A2N3%4PCU4QNQ7E97+
M@KW.$I%TYU^ 1(U882W637B0X"]5-F"1[['0#X<'Z$6-FA'1B_ZDFH;*<#<5
M#)"G1<YC\>($(J 0^EZ<7/WP73#VGQV0<=C(.#Q$_6@9#U/Y396"!?Z [2)G
M.L]OP(T3]E*M(+0+3M'QMM)@ZV!<#WR3Q2+#@&&W*<_8:;D4[(?O)F'H/Z-A
MV$OMX-D9XU6Y5%K^4Q2L*EBIV$+SK&0%,F,J1P:%9YL\!]/%TG#5&#/P"HQ9
M:AF7(!6-J@=7F2P+QK.$*1! F][S&8G/UUPGQ$VL\E1MA !"F<K.ZR9+)' J
ME3848J%+2%(L!F$@9$% T\^3>UG H %[#RP$6^.?*D?"0V_B^Y[O^ZQ8<I"1
MJ3E38*A8K58@O9%1@HR2I^F&69=(&.1*)HNBXF!$EE<:GTHDB%9LS$<,VR;+
MM;J7"7 IE[RDH5FUFH'6P-7R;SB0X/=<IGR6BBZ_"D)0=SE!3DE37"4%:4S&
M)*S,8DCBA0!2644]H-$O')[UA@7(4_!XR6"PR!*NV49P[9'F(HMEM@ "R."2
M1($AV(59%EI .JVHHZ%'@3SVV&P#(QA?J0H,(OX QK594E$4I.M3=LK/V.A[
M%*%KA-KLS5I8!ZO* I:3&'+J?R5B09.BH*8B0>X$O$Z HNB @H9O:0=F/)V=
ML= ;=9;]6;TTB<>6:BWN!8RE14)GN%'@A\2U<;<5WT!E*(6&A"W,2)YMK*5;
MR\_ ^+7>1LL!Q!TX9"(Q.CS&<=6,FU-$P<*;U544K?XE>[O*Y QBCN+:K#5%
MBWD?V?ZW%(+F-4E#/N[:;;T4V9;/S$3,5X*)^5Q0Y23"1A=-+C<7LD23B(<<
M-(>'&/TO3?&Q$&69VDB(>;%$TU((KR4HGJF2_!5'DFL"+P6\CO?H ;O="JO&
MNUO[S@4O*U1TWIWL@3\&$UCA8%H[$QD$#(^A5>R3 ^47=@&R+=\>#BB%[G &
M\2!T+#%C82X#W]-JP<F@(#G0%XN]"O2X1 -V31X.]5$T]=%C8V\<C+SA:-C5
MIZ/&O")CF-1\("E]R#&,$Y.V3:+)T?_!<_N&1 ^U21$TNY<*?%&8"B*;"A*[
MA2:'>58^$R 0D\F _5S'E7B014FA;!R_7GP%]C!S(8'#@(KL=P^% S,1CV.E
M$UJEM2R7)"94I 603VD04D1$FU00<*05.9[Q76;SK<@2JZ/4[704$ZK#1P'I
M%[G41<K6H8YV0 ^>R>6>!(,I(+8TK<T('9.F U<$699+#95J9="30/3475N:
MB2M/13(WH9AN#,%HFT.T@T,A'QY/'VN3+!IUUA@4::IB7"R,D+F"UKIX2IC
MCY[]9;_OR7XN^FQ>W8'B.U_4OXTA>AVG;S ;@C.#=8HS8R@TDO/T4H'GP3*#
MUPMTQIK&$P!?D=L* [<U&3NM$(C=\=HA85/T29"C6K,7/8G'_KC7-PG\7E_@
M1</ACM[1.&3O $-P#:4=>28@?:IRJ.GE?J[#2;^K3WT2]+JF$7"3JQDD&X$L
M/+80F= 04P9X0?1#L&N3#?>RAV3M6+1A%_7[0B^<]&4-O.DH9.]5"7P_&[C.
M4GF3L=]M^Q.G'7F3Z;3;CEH3N(6W+L\6"=O2A^DKYQH2OLP)C!J("Q4VZ\!8
MP(.;W((V2G?JGH:AWV-:Q]R+\,4X43MVR;%F4[;4L/>M;"8CW(0^BY-+^#%S
M[7[AD&D,K,,Z9J#"2P51E9F=1%:H5":4'>Y*^,'5ID+U-A>:&[4Q(76V!)16
MGOB#H)O$_$'X9=.D2]!VC+Y4FKPNMVMQ:781F#&Q;C[(E4&='46QRI!#5AD6
ME44&FZ<$2^AYR1\Z5FK,WR(_6V#[9170U%)"9-O,3?LI\+*9J5R6"1J!8=3A
MWNL<MX]XK %3R*\XE&9\(9)S\!_-%U!UA9:*"F,P\(V[&+#3$9..5U"LXPSJ
M&0O]%U22C[6^!WH>^WMM3;>WO5@ [@._Z,VL,T;=?FW1([N%_7$[_)W  S>L
M%77/&PASF14 'SO%"QPA%GG9A!SZ<8X[:<2)#"(6]EH-;V=#4/?=PM@[&GL:
MM"-?.DGE[W+>RO4[3Z$6GH9G[(:G!,< 6CG;,8-BVS(23KUI)\L._<%E6UL0
MSYC\Y!;-J+%*6]-/H4J,HC-G7#"(1GL7"%X/V<MZOW+QVFQA'&JA-YV.7'+#
M8 ";W6,=P-&^FT<:S0&O3X*PJ_DD<C2/>IH'X7Z%_NQO[7=VMT*[AKW"1U.H
MM)%;_(;A()@ZPH<]X<<CQ[IG=/11[XP@[Z%OUT<.-J'4.]ZDTNB0F%)L)BI@
M$YY1_NB<(!C\U!+#/DJ:Z8;0O\E6IG9AJ<(QQ&1 #HL2\28N91-.]^32N,GI
MF@A$TX*. ;'4$5$)>V4M<-UGHEP+NZ7NJTF[DW9_A<TX544K93.R=]JT)7]-
M>W"\^.ZV_Z]3(.6 9""'D!@)W]14S1(/=OHC#!E&(V\TFMIS'M<[H3(O>;*K
M?O7%?S(<#L:7;1X$Z\F5L,>B[]JS2 /;/M A)&S_"%'5;EGB#(.6MD\O[;$E
MN&5]YMC!>;L.Z)IS%0-0Z^,3VLMVCKVLJ <9=\^*NHQ:!*DR82('D=5_% 1^
MWG0$# ,'I=G]<_2E@*%G*(;;&^AP,/X+D.'$4>PP,MRY)EJDW$(]-[B/\%#T
MNL-@\0A,.'4QX>>8?GLX\?%HL$9[/]%1VWZL9Q)+W7J%0W[D4EL0=22P,T:U
MJ(X:QX$Z9+X-VX(C8=MH,O6"H0M>@K&+MIZPB3<$L/*3340-Z!D/89X[+@"$
MMQ]5_0X>Y**R,,3YTP[*FPS\<"^!!N$YV,._]*)Q%RE"-=A/X[-0[C(,O,O+
M49?@R.]88QQ,'!&. !M[(K9S9@]182(-TP;6V5TE^+AR"QY!'_A!T<>5P=R9
M>##7G*+ZH?_L]NY#08_XX? 1)9(0#NZ#8+X18::@./;Y$R!ILU!]^&L_!IC/
M?(9*K0-]R0+W)JJFH!0"Y,&E<>A;8Q6F=D#Y/"^7TISV$VXU)^OV>P9TZ0QI
MSXU RB*I$D_:7*(+Q5-G'>OCQ'C)LX6PYV3_J"@.7M^\>?_J&G'N H^\\=PZ
M7DIQ;U0PV'EN5+%%:<A.0:@%Z:_5BH6C[U&4X-)^7@-*HCS;5NCKJU"_VE(!
M)!X=)?'>11Q^XXOXB#7[EM;KRWB802<0S[ ;D,428[TOT!B0%W[8,921[+VI
M(N0M->,:8$OW<[*[3SD""CLP";&,H6].-'OGC<$7!JZ^@U-M1Q\;?WW@ZD+T
M+P=<R9*/QJ:LCTW#^AS"8%.@^W_XV8XC,W^#Z#.83KPPZJ#/R6#J?G,+O<M)
M'WT&8]\;C]Q3*T2?_>]%^]#G$,#G.'2!8W@YB/I?O0Z"SZ$W#;;!9]#_F'8T
M^ S]J3<)W(^*P6APZ7>,,?+[9V\'P2=YQM>"FJ_KZUGVSDJEH;H4]IX9AFES
M?\L2KP?D=!'-PLC7=[>W-8RL/WLT"0JKP6RS[W8.R'D-$J>P?![A2Y-3[83"
MN39'%S#0[*'?C*0TT*)5\[VV_52G6GD/W!G#PQZ6R"*F>U!0"E2U "S+-QK2
M#(,L5-&=50M645=,A>U]#F#CW+QHV=-=K*8%K[MR%M6LD(GD6B(.OMVC ]Y>
M:I1PQ?;,MZ-[E8+4>"F%STNA*;W3%R3/Z&6\H3F:G;17N<!TYB:7>V#8.;9M
M/TT<.#N<2XV'6'JGJQ&*V_8<ZWJ-,9NK=O1-4CZ<4P78G@ *S01 F\S>;?L5
M.$"HH9%_ Q^C[ 3MG5?EH(S:<HAG)-ZX=X^PHQAZ[N?N$;9[(E3!7M PMK(3
M=EWS0ZQ3Y7E*AW% DB1U+A5]S0M]W-R0P.M\0>,#!Z+"S3AVJ7=?V^O4!KRQ
M-]HRKV:G\1DH#KK:^W560CPW/N+.WK]SO0Q7!:P2C3V\>/>_<:\L\(;32V\Z
M/N)>V5X__=@!;9^]@,&+0N'UX/KTNR9$Y_;;0+K>\SX24.^[%?"E(/2NR^ 7
MSAW]E8!=$?XG EYF [<TU_6;WN:?':[-'?]VN/E/B5]I[UB :\]AJC^X')V8
MF]1UHU0YW?B?J1+6GAZ7@L.RX !X/U>JK!O(H/D7D*M_ 5!+ P04    " #3
M@ 59P5\&4JH'  "L%P  &0   'AL+W=O<FMS:&5E=',O<VAE970Q-RYX;6SM
M6&UOXS82_BN$>RFN@!);EORVFP1(MKUK#[?78+-M/],2;1$KB2I)Q7%_?9\A
M)5FRG6 71=$[X+[8XI SG!G./#/D]4[I3R83PK+G(B_-S2BSMGHS'ILD$P4W
M5ZH2)68V2A?<8JBW8U-IP5/'5.3CZ60R'Q=<EJ/;:T=[T+?7JK:Y+,6#9J8N
M"J[W]R)7NYM1.&H)'^0VLT08WUY7?"L>A?VI>M 8C3LIJ2Q$::0JF1:;F]%=
M^.8^IO5NP<]2[$SOFY$E:Z4^T>"']&8T(85$+A)+$CC^GL0[D><D"&K\VL@<
M=5L28_^[E?X/9SML67,CWJG\%YG:[&:T'+%4;'B=VP]J][UH[)F1O$3EQOVR
MG5\;1B.6U,:JHF&&!H4L_3]_;OS08UA.7F"8-@Q3I[??R&GY+;?\]EJK'=.T
M&M+HPYGJN*&<+.E0'JW&K 2?O?T@GD19B^NQA3 BC9.&\=XS3E]@G+/WJK29
M8=^5J4B'_&,HT6DR;36YG[XJ\%]U><6B2<"FDVG\BKRHLRQR\J(OM\PSQN<9
M*0W>F(HGXF:$.#="/XG1[==?A?/)VU?4BCNUXM>DOZ;6ZXS_45:P,+QBC03V
MBT#X:<0T4[5&@GCJ1JN"V4PPPW/!>)EBIK0\9VKCUE5:I75B#;/*C7V,"6V8
M+!W?3Z6T(F6/EEMAKMA'D#8J1_+*<LLL7T.J<TL)&;V- _ G>6V</ANWN^EO
MWRU+I>';K19;3MNL]ZU&C QF;]C77RVGD^CM7_;_,=-"#(*[FWJ4S^<GVG_$
ML' Q?$+X^P_D754;N,1\XV*\6X1!U!\<S;3G_6<;_N]]464B!>@?@J2=^QN;
MQ\%\&?4(LU6P6JUZA#"<@S+O4R:K8#$+V9W4.[YG22ZXYF4B3N6W_\M@%LW.
M4*-X<D(-%T$4GB7'4<P^*HJZ@RZ+*)B&R[Y!D!H-](_B()H,])\N@G!YJL^?
M]?\@=$+9LG4I9%4O;_[2TU\N+\Y_+WK?\XLO..=P>O%YM.@,+;XX.MUP,KGX
MTL&//<P$""49+TN1?S:*H1UR:&D=6M * W H/#@(!PY=[KN4IB64S@'C6C0]
MD/P-RQK8/<+8_^/@R<P#:AUJ!AQF:DT%BURJX#L4-;XGPB%SXSB8S/NI',V#
M>(!6BQE I8]G\S!88<N?A14(7L/N4K1;TEC-7?MXBDF317A"!5Y,3ZEA'"Q7
MBS,!'ZSBF+T7J4PH*,[,S^+Y*7D>1(O5"7DZ!]:>K@:H+8';W];:E>[";98S
M\6LM*S37ENJQU7)=6Z7_U_#8YW _,9DT35.4^DZ(IB^MNJQJC10W2%6-T]V*
MPO4O-N.6V7U%+LGWS,VT'11%/WHD*\HVK:_8'5BDA1LMA<B&8HZ6('TK1 E$
M!FC?;<9V&43L!,OXDW#3"21HW$ "5E?*)SS"# 'F@XO0'B3@IO$3+K;7(N&U
M(>:<+C%\+7-I]V0B<'5-QPEQR#_-[A[?L64\#4B*LU' \$1M2X<PW'@@NX2E
MS29H[+[C2=9ZCZ,?<RYQBN(J![MV"H,"VI*G@H,5I(QN,#%W/=R6Z\(O6B,=
MR9A=)B&<U) ES$E%19 (\9ZMKQGD-W9WN_FFLSU18N'&J$2ZS1)E+&W13K<H
MW3?NV &-Q[MMH&WBS4T)4-P.K,0-6)9/PE@W UANA,'?)$NG!TGO%)EC0,"7
M4;E,G6[W/'=E[Y&N8W Q.G2<6=X/$$.Q&R[>>A3S1=*#EPLR!*%Z$KZTI+4>
M1$=S5A0>3K17RDV]J/O WYW/7 P._# (P*8B\4+5ARGQ7"$&W0'@1HZ@\[HA
M_-=.%>%R#FFCZFWF.%J#8)\+CRO4C4+F7+=7#U]=NY+JDH+RBOL+>Z5EXA):
M%KB--9>% K=M62$#-R !L9J"G;K"V625-QMZII($F2[[O B;29U>5ES;?>-[
MG]@'%[?K,293C4_J_BD&77:[]P7ACZ%2VJ*.2\5XA11%@J':VX81&\&_3]1C
MP/Y4^/P7KS@W:/*H)7H=O3?H6-!EP;T]'*&0RV0^A!SRX+'^Y#66"$VISA*I
MD[HPEH*Q2?03%WDSR;'@A%<=XCI?54!;E?H=,*NJ-BS$,Z S=9&*]!7&:Y_+
M3R*7F0(+6>#6M&?GHZ]Q&*P11W$Y<)OT,\U^+D>Y4250<=]9YH-3/*.MEDC6
M[IB;, <L9CBQ2P>X6 XGHK%P1\M+*Q-9$3HTZ-LDHJG7Y"GR #;"3ZOB40J2
M/]K.3FI UAZG-32G ]TKH$B!F.XENQ%=VL"P[K[MQ'&I&9K'3]CPB><> ET0
MM24]:# 3RE($.@B&7I0IN.F3W:6R%*(YZAZJ"#TI#(KHL+G]K*9VQZDJ26IJ
MX1=70JNC?@WY?P34 XQWD/,RSO^!AANZ_5>VTR==\DE?_5+;_'*3_/+,B\X_
M]%?+8#4+!^-9M.CW7V@QHVF?$ >SU13AZ\_JN!"?;#$-EK,#?Q2$BT,S-PMF
M\T5OM I#]D^MC.MV-M+V6\5@,NCET<K/!VJ%03B?#0R9+SO#SCWBC7LOJ(70
M6_=.3(4#%= _IG;4[BGZSK_ 'I;[=^SW7&^I@<K%!JR3J\5LQ+1_&_8#JRKW
M'HMFR:K"?6:" ]]I >8W2MEV0!MT#_2WOP-02P,$%     @ TX %69# U^)@
M!0  =PX  !D   !X;"]W;W)K<VAE971S+W-H965T,3@N>&UL[5=M;]LV$/XK
MA+<6&Y#(K\FR-C'0M"O6 =V*MEL_T]+)8DN1&DG9<7_]GB,EQ482-]OG?;$E
MBG?WW'-OY.76NB^^(@KBIM;&7XVJ$)IGX['/*ZJESVQ#!E]*ZVH9\.K68]\X
MDD44JO5X-IF<CVNIS&AY&=?>N>6E;8-6AMXYX=NZEFYW3=INKT;34;_P7JVK
MP OCY64CU_2!PI_-.X>W\:"E4#49KZP1CLJKT8OIL^L%[X\;_E*T]7O/@CU9
M6?N%7]X45Z,) R)->6 -$G\;>DE:LR+ ^+O3.1I,LN#^<Z_]=?0=OJRDIY=6
M?U)%J*Y&%R-14"E;'=[;[:_4^7/&^G*K??P5V[1W.A^)O/7!UITP$-3*I']Y
MT_&P)W Q>4!@U@G,(NYD**)\)8-<7CJ[%8YW0QL_1%>C-, IPT'Y$!R^*LB%
MY1N3VYK$1WE#_G(<H)'7QWDG?9VD9P](GXNWUH3*BU],0<6A_!A(!CBS'L[U
M[*C"WUJ3B?GD1,PFL\41??/!O7G4-_^/[B7IQ?W27!#/?"-SNAHAXSVY#8V6
M3[^;GD^>'\&V&+ MCFG_)K;CTK_;0&(ZR\2^&O&)4"FY=86PK1/*!'*J%HVS
M&Q7+"%6,U2@0HL!J)V33Z)TRZRA"/BCD.A5"&M-*+:@L*58."PB'3R+8N'5'
MTIT&>UKP&O@YY0V=\A^T]?Y'Z(">XC/2F/6S\4+YW%%(VE2@VG> 85$9$2JH
M F9;9.(5E>1<7-\#C#B@X$3I;"T@WEB'7@*U@.G(Y.P2A2U1TN4(&Z)Q6PI9
MV]8$'W&4RDB3*SCH _"CS031M*ZQ'AH8]JW183T3'RMDP8$Q1SJY#]:<TCLF
MI_\>1$VALH47K8<;A]SO0>OUG_!GW18#5P16@3&U+Z:R9HFO<>%$;*5STH1=
M_+21>;<OSQWB!F6\#%K;V/YZI 4#E!J]6$;\T8YM5Z%L-<LFAF"6U$:N-'5<
M;."-!<]=%8"*/Y !1_(J>8*'O'61BI(*<J";]47*][F@&PP93\#LQ18=FO^+
M/OR/D8RAN2]7&1@G0J@<D:A3MR+N5@*]AH9>PW1RX'N%G"^SG[/9$W$B8*R1
MKJ/N8,=T<I'-GSS6R#RA3+F"G'5 ZE@-R^:5-&MV+97A74\BOA"<6K4A1@9H
M6+#$8,.##& .J5<(8X.H)$2E0% U4D.W76[T<1<VF1DX9BO2>^JJ(P+J L=E
MWM4D2*H46TY>6+?_L4MH[AP/VLUN&]1!7>]S^OTTN\"DT[K/>BS,AX7'QC-*
M,N<GG+--(E/O,O'TNXO99/[\6_GBU<V_S);Y>3:YDRUH1H9*%7C#8I&=/7F<
M@?\S)1,OBD+Q&I9V)\-LN*,+KE2R.!Q&/'S0>GI7.4AYU_IP<-7J*T5\>05F
M;72?O>I"=9BCB/&#:3H[2-/#G7MQQ\[S._E[/+\>S-X.VMK AQ33>^;8GNWD
M&:9+I!+!Q(22)4X%""A^<:#D81.)2N-2TP8S)46YQ?!R"@-&>6#%@-?J"U"<
M8KLYY=P!GQZS7?;!Z<V4EL/(FD&*Q$ #J:_9\3TL4(DS:[).#ZA'C?O*:F03
M[TGC^];_X<"06S!H>,3BR5NMBCCH[J'&LRLLHJ5;XZ@S4!49J+ANQ!HIP@0Q
M#'&&DHZP5&61;&!T18RY2Z-"M W\Q8$D'IH$RB+H%(2M"M413E.!O^1>879]
M!>E(-;O>PB/4]HU$A%)E*,ZRG?C<.N4+E69Z=M\I=+QW&:@);O*5!W.8R4OW
M@F%UN%6]2)>)V^WI2O86+"E$2E,)T4GVT]E(N'3-22_!-O%JL;(!%Y7X6.%F
M2(XWX'MI<4KM7MC <-=<_@-02P,$%     @ TX %6==S)50,!   \@L  !D
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
M<YP_<H>GP[\(KO.7\4$\_W_AO71KE!E1KJ!:S+X[F^"$2=_L^2;8+GTG+VW
M5W>Z;$CB?&<!O%]9['?]#3L8_G%R]5]02P,$%     @ TX %67(M+$&" @
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
M&N%H>3F8'9Y?G;%\%/A#T=KWK@5'LK#V,]^\S2\'8W:(-&6!$23^W=$U:<U
M<.-+@SGH3+)B_[I%?Q-C1RP+Z>G:ZC]5'HK+P8N!R&DI:QT^V/6OU,1SPGB9
MU3[^%>LD>W(\$%GM@RT;97A0*I/^R_LF#SV%%^,'%":-PB3ZG0Q%+U_)(*<7
MSJZ%8VF@\44,-6K#.66X*//@\%9!+TSGJ1C"+L5<K8Q:JDR:(&999FL3E%F)
M&ZM5ILB+I^W5LXM1@&D&&&6-F:MD9O* F5/QSII0>/':Y)1_K3^"RYW?D];O
MJ\E>P-]J,Q1'XP,Q&4^.]^ ==7DXBGA'_SD/NX)/V,>[L7FNSGTE,[H<8' \
MN3L:3)_\='@Z?KG'\^/.\^-]Z-,KZ95GOV\8VP3)W;[+R?TP'PO"B&2VK*39
M<+RUD76N N4BLRB:\>G*(PVYY,=+9:3)E-3"PRAA4H,7A;PCL2 R J%6TD%.
MF0CL<D@3VCL4\;Y):^440"J-!EN1(2>UWO![JD+2#7#LUD1'YFP'C?CDIQ>3
MR?CE+[/93;P\?/E,@)\@'<BILN<9?+ NVI$F%U7M?,UE#3;"NIK-\AM'JUK'
MS,54\LOYZ^MAK+_+H:\W!_QT(W(KC TPE>DZ1\JT;A6421P9R0:82VL#1&'!
MT9=:<2H6&\%.1V<YU9H"[<SC4+Q-D=M*&0:$C5(:T"2_/HAF9?X)_)#2_C3Y
MPX&&PGJDN5 9\NP(WL(IW429U0[Y7CV+E50YL5.&,O*>FY_=DF(IE1-5KYFV
M 7Z;WG[(V\HWN<F'@IL*0&!('\$9Q:M[428R("8#@5&F;I0/&I]#YY9"/RB3
M8QZ9O]F7%A%57)"@^PH,S_W8&-B0= S-R7@%D')!3AP=MOB0BG$:##O$MUU3
MX:_-^^^7=:A= DRQ/# )WR>F-Q&^L+7.V5->FMS1T/U4F[25XCBPU^VP[<3@
MXJ568H\)@;<Y9CQ;.S$SIH;.A]CO L"\L\3A^/GOW^4%2M^FY6BXAXA..B(Z
MV<L@-]M)1I&NNP0]0$?_&DP\$E6U(QP:N)H?PMA'/BEH$,#&0]2+CY05QFJ[
M @6\-=DP5D-!=EU8)BN[-C#AZP4&2F&,#L1\C5,&.S:WNHZDTFC.M$[-TCB/
M X5F5DP5#DX:+[/$0MMQ(JVP^)M&Z\4%L7UE.^W*=KHWT[<^#M5K'U3)]+JK
M5O\,(18HT7_''P]4@,-A"E%ADT8ATF/#E[Y'>3SLI?R,<>^L<,JDQVFR2AD+
MA0Q"+I=@@\3N<1:0-5EVM84\-?.DE5PHK8)JLV]%KGRFF3WA%2\-MON01K+!
M[=72XX.3^Y SCN[(U!1EF,70MU[DM4LL3KWEE:B)UU&HXU9+!)A%9LD58@9I
M.5LVY-_E:%]_G'7]<;:WNOTCD+,&UUFJR'N0]%_X;)CEEG?UKKYY'&3>A>_M
M76(L9JNXBL6;+M\](!P13"Y=[L65Q;_NK/!F-K_JS@H*70/8G6JW5:QIJS>;
MWW9J[^TPFG\^/CL0S?LYK:++'[I:/?V(G9V)R8OQLW/QMJP<>QY[ 1V6Q.2"
MZ:71?)6:#HO&-Y::Y=U- :12TP& 3!&/4?E6"QL388"!&L"N;=+.6M4JG;QP
M2J0X';Q&TXJ+.R,UEP?9K)0Q\:RT!$5ME\3AR4&3]LA\7ZU+'\<6@[R$0P#C
M)?-C**SA..T0YM,>EYEY I!@@M">'*X;DH3C?&Y!;!"F.ZEK&=H9H7;>(>2;
M(@(;/!L)%* J#LJ/ED$Z'NDHT,MM/(=UWO=Z#^W4M='\MM<:/W>M <:W)6&=
MW/.9-77%V?&NKMA*/EXWJ(09V/HC-\+_IGIB)_^->E_+);E5_$T@DJD)Z<.Y
M>]K][#!+7]M;\?2;Q3OID"HO-"VA.AZ>X5#CTN\ Z2;8*GY[+VS EWR\+' *
M),<">,_?".T-&^A^C)G^#5!+ P04    " #3@ 59%HCYH' "  "E!0  &0
M 'AL+W=O<FMS:&5E=',O<VAE970R-"YX;6R=5&U/VS 0_BNG,"&0 DF<] 5H
M(U$8&I.0$+#MLYM<&PO'SFR'PK^?[;0ADZ"3]B7VG>]Y[CD[=[.-5,^Z0C3P
M6G.AYT%E3',>1;JHL*;Z5#8H[,E*JIH::ZIUI!N%M/2@FD<DCL=139D(\IGW
MW:M\)EO#F<![!;JM:ZK>%LCE9AXDP<[QP-:5<8XHGS5TC8]H?C3WREI1SU*R
M&H5F4H#"U3RX3,X7F8OW 3\9;O1@#ZZ2I93/SK@MYT'L!"''PC@&:I<7O$+.
M'9&5\7O+&?0I'7"XW['?^-IM+4NJ\4KR7ZPTU3R8!E#BBK;</,C--]S6,W)\
MA>3:?V'3Q9(L@*+51M9;L%50,]&M]'5[#P/ -/X$0+8 XG5WB;S*:VIH/E-R
M \I%6S:W\:5ZM!7'A'N41Z/L*;,XD]^*%Q1&*H8:CI[HDJ,^GD7&,KOSJ-BR
M+#H6\@G+&.ZD,)6&KZ+$\F]\9!7ULLA.UH+L)?S>BE-(XQ!(3+(]?&E?9NKY
MTG^7^5%U'3C[&.SZXEPWM,!Y8']\C>H%@_SP(!G'%WND9;VT;!][_FC[K&PY
M@EP!VR]S/]'AP93$Z07\[WIT*\!4LM54E/H8+@W85\#^%9SC&@NLEZ@@3;PS
MA1LFF/W[2EA+6>J>ZPN,PW0\&MB3\&QR!E>R;J2P-4)#E=%@4_FV/6'BI%&R
M0/W.D9 PFR;O9A:.LBD\24/Y\*(&.9)I.,W& P<AX8A,=HZ/'BL:M$Z-:NT'
MA(9"ML)T7=1[^QETV;7>>W@WP.ZH6C.A@>/*0N/3R2@ U0V%SC"R\8VXE,:V
MM=]6=HZB<@'V?"6EV1DN03^9\S]02P,$%     @ TX %6=#D_FI-!   S!$
M !D   !X;"]W;W)K<VAE971S+W-H965T,C4N>&UL[5AM;YM($/XK*QI5J41B
M6%X,J6W)2:Z]5.HI:M+KYS6,#2JPOMTE3N[7W^QB8Q)L-ZG4Z#[TBV&'F6?>
M=AZSC%9<?)<9@"+W95')L94IM3P;#&220<GD*5]"A4_F7)1,X5(L!G(I@*7&
MJ"P&U''"0<GRRIJ,C.Q:3$:\5D5>P;4@LBY+)A[.H>"KL>5:&\&7?)$I+1A,
M1DNV@!M07Y?7 E>#%B7-2ZADSBLB8#ZVIN[9>:#UC<+?.:QDYY[H3&:<?]>+
MJW1L.3H@*"!1&H'AY0XNH"@T$(;QSQK3:EUJP^[]!OV#R1USF3$)%[SXEJ<J
M&UN115*8L[I07_CJ3UCG8P),>"'-+UDUNKYGD:26BI=K8XR@S*OFRN[7=>@8
M1,X> [HVH";NQI&)\I(I-AD)OB)":R.:OC&I&FL,+J]T4VZ4P*<YVJG)1\[3
M55X4A%4IN:H4JQ;YK  RE1*4),>W#%?RW6B@T)DV&21KX/,&F.X!#LEG7JE,
MDC^J%-+']@,,LHV4;B(]IP<!/]75*?$<FU"'^@?PO#9SS^!Y/Y7YKH0;/'\W
MGIZ>,[ED"8PM' \)X@ZLR=LW;NB\/Q"MWT;K'T*?W. TIC6&Q^=DGE>Y E+@
M=DY)OHV<[8W\,/;;-Q%UO/?DM:_?S,A >M)*IHI@FZ%M<\]D>@<"N:)=?Q1<
MRA<[GI9<J/Q?9GAA([Q@0CSDU6*KE21U61<,(VQE?R%-'E]51&6\EKAQY#MR
M#2+G:1>[KM1A5VN=2V@Z>;*GDV>_K/+7F%2EMH5S*7D )K:"(^+:3NATUC3N
MKH9#1X>OR?D.^I%O@0UNS[]KNS3H2>/8ZVMZE%P8&@2!%)[HPCUNN$O[^>U"
MWR7;V+<>!!2F53++EYTLG"?EV5P]K)+C],2A/73Z>Y?Z-HU#+-L=_A4NL>$*
MDJSB!5\\M#K1'D>NM].19WN4]NMHA\.(W-0SQ14K?K@9_-#VW#ZVZ]J^U\_"
M\^UH&)*O%6MV]NMNW%O!4D#7\..AC^U@1\7V[9A&>S,7^,J3=JE@WS5PAL_V
MH'5O34/VC\O3ZQ$)='.&'<&3MAP1'QL2]0?G?T'FEY! .<.YPD'1A-X/\S>A
MOR*ANU&7T/WNZM<0.NT/('6"%Q!Z%_6IA^<0M_LRX@[L $UZ(0>V'\6'B3M^
M&7%3>^CU';F.3</X1<Q-PZA?=COP^LWP\%_)\WX3=U.YN%_]?1ZT[D\1-PWB
MCN!Q5XYT\X8'#S)!>S0(GG\TJ%4M,+HN2<$]5D7"KG/!8>#G]O8)?^Y3,R_T
MQY_JX@%9Y*3[W_#.T%,4QUIGQ\[%UZE(/PH[HM#WM&C8%6%]410]$E%RFX$
M-E>PI2TWLCULSNVC*3M:O]OL:LF@<\)&NEF8[PB2&/9J#MNMM/U4,6U.Z%OU
MYCO'9R86>25) 7,T=4Z'V 31?#MH%HHOS7E]QA5RF[G- *=': 5\/N=<;1;:
M0?L!9_(?4$L#!!0    ( -. !5F*YO^KN@(  )X&   9    >&PO=V]R:W-H
M965T<R]S:&5E=#(V+GAM;)U5;6_:,!#^*Z>TJEJ)-2^&%%J(!&VG=5JUJG3K
M9Y,<Q*IC,]L!^N]G)Y#205&U+]AWON>YYVSNTE]*]:)S1 .K@@L]\')CYI>^
MK],<"ZK/Y1R%/9E*55!C337S]5PAS2I0P?TH"&*_H$QX2;_R/:BD+TO#F< '
M!;HL"JI>1\CE<N"%WL;QR&:Y<0X_Z<_I#,=H?LT?E+7\AB5C!0K-I "%TX$W
M#"]';1=?!?QFN-1;>W"53*1\<<9=-O ")P@YIL8Q4+LL\!HY=T16QI\UI]>D
M=,#M_8;]:U6[K65"-5Y+_LPRDP^\K@<93FG)S:-<?L-U/1W'ETJNJU]8UK%1
MSX.TU$86:[!54#!1KW2UOH<M0#?X !"M 5&ENTY4J;RAAB9])9>@7+1E<YNJ
MU IMQ3'A'F5LE#UE%F>289JJ$C.X7=EGUJCA](E...JSOF\LO0ORTS75J*:*
M/J"*X5X*DVNX%1EF[_&^E=5HBS;:1M%!PN^E. <2M" *HO8!/M+42BH^\LE:
M]Y58,[3W,[@.N=1SFN+ LRV@42W02TZ.PCBX.J"OW>AK'V)/QK;CLI(CR"E\
M1NMAMI.C;A20*_C?]?1.@,EEJ:G(]!D,#=CWP.8]G.,&4RPFJ("$E9/ ,U6*
M"O/:L!Q#U I)^,XFG0OX@3/*P5)#*H6V+<3$;$="V KC<,<;AR'<B2_&)M+,
M !,+%$:JUWWP(-KQMH,0GA1=(-\YZA&RAR0@7;BVM\M2JUB;,F.V3?X-(Z2W
MZXL)C*EMIJK.4B,8NMI-$'1W?5T"/TUN;[:1%KU%]3JV FDHW[K5N'6Q5>LQ
M=%J]H+VQ]_TW_:V94:":59-1V]<HA:G'1^-MAN^PGCEOX?7DOJ=JQH0&CE,+
M#<XO.AZH>AK6AI'S:@)-I+'SK-KF]@."R@78\ZF49F.X!,TG*?D+4$L#!!0
M   ( -. !5E<BCP@VP(  ($(   9    >&PO=V]R:W-H965T<R]S:&5E=#(W
M+GAM;,56;6^;,!#^*Q:=JD9B!0PAI$V0FF[3.JE2U'3K9P<N =78F6V:]M_/
M-@DE6Y)UTJ9]P7Y\=X^?\]LQ6G/Q* L A9XKRN38*91:77B>S JHB#SG*V#:
MLN"B(DI#L?3D2@#);5!%/>S[L5>1DCGIR(Y-13KBM:(E@ZE LJXJ(EXF0/EZ
M[ 3.=N"N7!;*#'CI:$66, /U=345&GDM2UY6P&3)&1*P&#M7P<4D,O[6X5L)
M:]GI(Y/)G/-' V[RL>,;04 A4X:!Z.8)KH%20Z1E?-]P.NV4)K#;W[)_LKGK
M7.9$PC6G#V6NBK&3."B'!:FINN/KS[#)IV_X,DZE_:)UXQOZ#LIJJ7BU"=8*
MJI(U+7G>K$,G(#D4@#<!V.IN)K(J/Q!%TI'@:R2,MV8S'9NJC=;B2F8V9::$
MMI8Z3J4/1 C"U NZ PGB"20ZNR=S"K(W\I3F-UY>MN&:-%SX %>,;CE3A40?
M60[Y;KRG=;7B\%;<!!\E_%*S<Q3Z+L(^CH[PA6VRH>4+WYKLOAP;BF@_A;DC
M%W)%,A@[^A)8%B<]/0EB__*(P*@5&!UC3V?ZSN4U!<07:+T5*XZ(/4YW>I)@
M/[Q$_ZN]+P3 SJ%H3;/R>;]AV^J]![OWOPR<W3"D"EY+PG+9LV?#?,).;P++
MDK&2+?6-I81ET+*\0Z&;A'$'1Z[O^[LX3'8P#C!JC\Y*\*?2/DE;EZ&/VW[@
M^CCNH$'4M0WU1%/!,Y!29]QN<$9)6<G6[TR31'&OBX-ATL'8]9-=C).H9];Q
M4,;Q$.^N $[>;/_7[566B;J[')OS[NKG3PA@JJ,,NT$8='#@)H/@M_;#,S#.
MWO\\R^MV]>-@S^BP/_@CWWNN"-759[^&O[5-^QX?KU,6*A!+6_PDRGC-5%,A
MVM&VOEXU9>75O2G.MT3H&R41A84.]<\'?0>)IN U0/&5+3)SKG3)LMU"_R.
M, [:ON!<;8&9H/WK2'\ 4$L#!!0    ( -. !5D\H$JVJ@(  #$&   9
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
M"N7@K86R+K?9@WR[_7^U-I[&/+,&'E.SF7+QI>;/)"17;EF\W#^,26AT!P<
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
MO1; ]S/.U6:@#;17ZN=_ 5!+ P04    " #3@ 590Q*#)1X$  !?#P  &0
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
M^7;^]'=OLH"&'\A_]7XH)<!>-@VJ.7\YKMB\,6G )LW!PL5M@\$3G<*X*9?
M2PZM[D-D0SD$C!184Y<VZ\PCW/GZ=A#FS3%O2>0&HVQ'OO IW=4'+LU&>WIW
ME"67Y+OM(5"\9\\@L27V)!3!9JHT$N/-\L#+('2S-'3#='1,%<:!&X?TF"I-
M1FY"HT-5X(8&-$Y.\ND4AEN+=3["SZ3>X3&12T<CET;I+_%&*_06HW6.]^'=
M;'F\)S-;,MOHTRL_VQ,IW1?WKLK(ES\XX=,Z'O_JC#.](QYZ1_S3O:,5&AK-
M656]]O>%/T.B(.\DUWP_QXZUB?,'_3_;P) Y1\K['I26/#>WB/_@_(ET#==J
M,(DB3-UXFX1)&KE^NKWB:&1*DA[H;T1=8_/N(45K.OD6-,Q\U\^V]1 'R5Y]
MA%FZUU@V>OQWV>FLR>$H6?/V@YU*\1/$\0?93Q(WBM,#_>>ZK<0K;$#;3N8E
M#D"DK5AS$CP>N3$=G52GOAO$(7D0FE7#8H:W$43AEI ;I>A:$.^LH*.NO[<2
M83BPB6U6CM6+MS,8U2"7=OQ3V+>Z1O<STK Z3)@?^\%JN[T?3[\RN>1X614L
MT)1>I5@1LA_Y>D&+UHY9CT+CT&8_2YR209H-J%\(K,"U8 X8YN[I/U!+ P04
M    " #3@ 59]I^O^W<"  "^!0  &0   'AL+W=O<FMS:&5E=',O<VAE970S
M,RYX;6R55&U/VS 0_BLG,R&0.N(F;==!&XGR(IB$5,'&/KO)M?%P[,QV*/S[
MV4Z;=>O+M"^QS[Y[[CE?GALME7XQ!:*%MU)(,R:%M=5Y%)FLP)*9,U6A=#=S
MI4MFG:D7D:DTLCP$E2***1U$)>.2I*-P-M7I2-56<(E3#:8N2Z;?)RC4<DRZ
M9'WPR!>%]0=1.JK8 I_0?JNFVEE1BY+S$J7A2H+&^9A<=L\G/>\?')XY+LW&
M'GPE,Z5>O'&?CPGUA%!@9CT"<\LK7J$0'LC1^+G")&U*'[BY7Z/?AMI=+3-F
M\$J)[SRWQ9@,">0X9[6PCVIYAZMZ^AXO4\*$+RP;W]Z 0%8;J\I5L&-0<MFL
M[&WU#AL!0[HG(%X%Q(%WDRBPO&:6I2.MEJ"]MT/SFU!JB';DN/1->;+:W7(7
M9]-;QC4\,U$C/" SM4;WXM; R5<V$VA.1Y%U6;QOE*T0)PUBO =Q  ]*VL+
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
M&QK9]J<VT-BX$E^B-@W##2O3TD':!+.^0M0O@>T:_4\B_P-02P,$%     @
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
MCMK5,F;AWO:"YM V Z!02::1#*9N>QU\C739D^FR9TZ7;=9!9&0ZA])B*(U
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
M&;@#YVM>5?EF_^-*)$M1-$^H_WZ?Y]7/7QJ!I[SXMA_.[/]02P,$%     @
MTX %6:($S%<D P  $ P  !D   !X;"]W;W)K<VAE971S+W-H965T,S<N>&UL
MK9=M;]HP$,>_BI554R>MS7. #B*U9-,Z;5K5A_6UFQQ@-;&9[0#]]K.3-*7!
MC1CJ&["=^]_=[QR;8[QF_%$L "3:%#D5$VLAY?+,MD6Z@ *+4[8$JI[,&"^P
M5%,^M\62 \XJ49';GN-$=H$)M>)QM7;%XS$K94XH7'$DRJ+ _.D"<K:>6*[U
MO'!-Y@NI%^QXO,1SN %YM[SB:F:W7C)2 !6$4<1A-K'.W;/$=;2@LOA#8"VV
MQDBC/##VJ">7V<1R=$:00RJU"ZR^5C"%/->>5!Y_&Z=6&U,+M\?/WK]5\ KF
M 0N8LOR>9'(QL886RF"&RUQ>L_5W:(!"[2]EN:@^T;JV#3T+I:60K&C$*H."
MT/H;;YI"; G<X V!UPB\?05^(_#W%02-(*@J4Z-4=4BPQ/&8LS7BVEIYTX.J
MF)5:X1.J]_U&<O64*)V,S].4EY"AKQOU)@D0Z#@!B4DN/J$3='>3H..C3^@(
M$8IN%ZP4F&9B;$L56,OMM ER40?QW@CRHZ2GR'<^(\_Q H-\VB]/(%5RMY+[
M!GFR?_2.W%;5:DOFM27S*G_^GB4SU:/V$)@]Z+-\)I8XA8FE#JL O@(K_OC!
MC9POINJ\I[/DG9R]JIS?5L[O\Q[?8\XQE4^FBM7*J%+JRVH5>Z[OCNW5=B4,
M1GXX>&V4[!JYP\&+IU>9!VWF06_F/V&.<Z3>?I0R*M2=0NC<1%%[";=CNU&7
M8M<H<CLV26\Z!VY3V,*&O;"7]$2J?1)$JG._ BH9-VY9:(!UO [LKE'@=&%[
MTSD0-FIAHU[86XY7D)OPHIW,1[[?H=NU<1U_V,'K3>! O$&+-^C%FZH%DJIW
M5\@R(^;+:K #X?NC#JC!)NH4(^G-Y$#.8<LY[.6\P;GZ\=('M!2 )-Z80(>&
MW>ILUM1@,^R"]J9R(.BH!1WU@OZ6"^ FN-'NZ^IUX0PV8?<P]H8_$,YU7MH1
MI_\X,HF-I['1;5_KT6#GMC%8A2,GZ"#VY_"_C/96]Z5[Y5^8SPD5*(>9<N^<
M#E2]>=U^UA/)EE5#]L"D:N^JX4*U[,"U@7H^8TP^3W2/U_X)B/\!4$L#!!0
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
M?349(FN"A$5(& /!K)J,VIJ,G%?$H8\I7N:]%7"+0TKRNEOU^>V4GNLW$L9
M,,OO<>OWV&G9S4YDJ3[IR=_$T8R<C'-/?"0L0L(8"&858M(68H)M1A-D39"P
M" EC()A5DVE;D^G7-".W."1?>%SVF>W4G6LV$L9 ,,OLR];LRW=WHOCY5"=R
M,LX]ZY&P" EC()A5B##HLD: [44-#U06*"V"TAB*9E?F* 6&7].1WE!/ZI;4
M^^G(K3S;<R2-H6BVY[3SG#I=8Y]W8FLNAE['G=JSSWPD+8+2&(IF5Z%+RN$
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
M*5EJ+M> 8^!Z@'J_9$P^W6@'Y4';Y']02P,$%     @ TX %6;!BD#R& P
M"@T  !D   !X;"]W;W)K<VAE971S+W-H965T-#,N>&ULK9=OCZ,V$,:_BD5/
MU:[473 0"-L$Z2ZKJCVUU>KVKGWMP!"L,W9JF^3VV]<&EF4)8=OHWB3\\3S^
M/3,D,ZR.0GY5)8!&WRK&U=HIM=[?N:[*2JB(NA5[X.9.(61%M#F5.U?M)9"\
M":J8ZWM>Y%:$<B==-=<>9+H2M6:4PX-$JJXJ(I\^ !/'M8.=YPN?Z*[4]H*;
MKO9D!X^@O^P?I#ES>Y6<5L 5%1Q)*-;.>WRWP8$-:%;\1>&H!L?(6MD*\=6>
M_):O'<\2 8-,6PEBO@ZP <:LDN'XIQ-U^CUMX/#X6?V7QKPQLR4*-H+]37-=
MKIVE@W(H2,WT)W'\%3I#"ZN7":::3W3LUGH.RFJE1=4%&X**\O:;?.L2,0C
MX9D OPOP_VM T 4TF7-;LL;6/=$D74EQ1-*N-FKVH,E-$VW<4&[+^*BEN4M-
MG$XWHJJH-G71"A&>HXW@FO(=\(R"0C?H"\^IRD3-->0H(ZI$A:F\0E?WH EE
MZMJN>;Q'5^^NT3M$.?I<BEH9);5RM>&SN[A9Q_*A9?'/L'RL^2T*O)^0[_GA
M1/AF/OP>,A..F_#@=;AKLM*GQN]3XS=ZP1F],]:G?+5"X;20_27>J3W)8.V8
MGYH">0 G_?$'''D_3[G\3F*O/ >]YV!./;691U<?:_:$L*FL22E46Y FK==3
MOENQJ!&S?QB'%,<)7KF'H9_9'2_T$_9^PK?\+*; VZC% #R(PL4(?%;Z0O!%
M#[YX"SR: E^<@L<X&H'/2E\('O7@T5O@\11X= KN8V\$/BM](7C<@\=O@2^G
MP.-3<+P</RJSTA>"+WOPY2SXYQ), R\TR"G\Y0E^E(3!"']V@POQDQX_F<<7
MFC#;VFA55XB!Z<EH3YZ:EC1E*#DQY/MA,GZ29O>\T!'V7IJJ-^OI=U#J#KVO
M;/- HABY,N-/LVO3:4W/-)4#I2?[I7=B]L9?A,G([#S-I6X'(P2>=?O0FD$'
MPFJP=HM:UQ+^1TV[#88^<9*$XT[2+1OV&Q_[@Z?YM8&71H]G>VI7KDTMI;4A
MMHSNB!TR%:IY;KJ?&9HE:8K56F&4;"FCVHQ(DV[\B:K%R4G5II8MO?B,FY<6
MCN=[^)^"WV3?S<M4B\>A/_8RL6P9!M'(BSL85.U;PA]$[JA!8U"8..\V-LF0
M[>#=GFBQ;V;7K=!F$FX.2_.R M(N,/<+(?3SB1V'^]>?]%]02P,$%     @
MTX %6<\272J% @  ] <  !D   !X;"]W;W)K<VAE971S+W-H965T-#0N>&UL
MK55M;],P$/XK5IC0D*!YW1@EC;0V18"8F#8-/GO)M;'FV,%VV_'O.3MIZ*:L
M5&-?&OM\SW.OO4LW4MWI"L"0^YH+/?$J8YJQ[^NB@IKJD6Q X,M"JIH:O*JE
MKQL%M'2@FOM1$)SZ-67"RU(GNU19*E>&,P&7BNA575/U>PI<;B9>Z&T%5VQ9
M&2OPL[2A2[@&<]-<*KSY/4O):A":24$4+";>>3B>)U;?*?Q@L-$[9V(CN97R
MSEZ^E!,OL X!A\)8!HJ?-<R <TN$;OSJ.+W>I 7NGK?LGUSL&,LMU3"3_"<K
M337QSCQ2PH*NN+F2F\_0Q7-B^0K)M?LEFTXW\$BQTD;6'1@]J)EHO_2^R\,.
M 'F& 5$'B!X#DB< <0>(#[60=(#D4 LG'<"%[K>QN\3EU- L57)#E-5&-GMP
MV7=HS!<3MD^NC<)7ACB3S61=,X.%-YI049*9%(:))8B"@2;OR#? *I#BD1:V
MJ:)6C_#N71MRG(.AC.LW"+NYSLGQT1MR1)@@%XQS; J=^@8]MG;]HO-NVGH7
M/>%=3"[0GTJ3N2BA',#G^_&G>_ ^9JI/5[1-US3:2_AU)48D#MZ2*(B2 7]F
MA\/CH7#^S_K\V=8?)"/N>R=V?/%S>F>HV"U=,DQG)^)8-[2 B8<C3X-:@Y>]
M?A6>!A^',OV29/E+DLU?B.Q!39*^)LD^]NS[P#]SJ!0M2]BVBETFZRP8?4C]
M]6Z*#U'*!Y3"T=E#I?D_E-I0_9TQ5H-:NOVA,825,&U7]M)^19V[R?Q(/@W'
MLW! GN-*:S?07_IV'UY0M61"8](6:"H8O<<IJ]H=TUZ,;-P0O94&1[([5KB6
M05D%?%](:;87:Z!?]-D?4$L#!!0    ( -. !5FX>B&*H ,  ( 6   9
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
M 64-<'\EI=E/K(/N#97^ 5!+ P04    " #3@ 59U*;F!H<"  !*!@  &0
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
MA;".C5J%YKQCHU9MM* /];E=J1PGCW:<+E:-[K6=H([J?[IUHT^9(3$Y-*9
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
M$+30AQN"Y<\ 92"_7U$J7DY4@';C?_X#4$L#!!0    ( -. !5G5"_V!J 8
M &TP   9    >&PO=V]R:W-H965T<R]S:&5E=#4R+GAM;+5;VV[;.!#]%<);
M+%I@$XNDKMG$0&II;]@ 0;/M/C,V'0O5Q4M12?/W2\F.95$4$[O3E]B2SQQR
M..2(AYI</I7B:[7F7*)O>5945Y.UE)N+Z;1:K'G.JO-RPPOURZH4.9/J4CQ,
MJXW@;-D:Y=F4.(X_S5E:3&:7[;U;,;LL:YFE!;\5J*KSG(GGCSPKGZXF>/)R
MXU/ZL);-C>GL<L,>^!V7GS>W0EU-]RS+-.=%E98%$GQU-;G&%PGU&H,6\27E
M3]7!=]2X<E^67YN+/Y=7$Z?I$<_X0C843'T\\CG/LH9)]>._'>EDWV9C>/C]
MA?VWUGGES#VK^+S,_DV7<GTU"2=HR5>LSN2G\ND/OG.H[>"BS*KV+WK:8MU@
M@A9U)<M\9ZQZD*?%]I-]VPW$@8'B,1N0G0'1#=P1 [HSH&]MP=T9N&]MP=L9
MM*Y/M[ZW Q<SR6:7HGQ"HD$KMN9+._JMM1JOM&@FRIT4ZM=4V<G9)_[(BYJC
M]S&7+,VJ#^@,?;Z+T?MW'] [E!;HGW595ZQ85I=3J=IKK*:+'??'+3<9X:;H
MIBSDND))L>1+@WULM_<M]E/EY]Y9\N+L1V(E_*LNSA%U?D'$(:ZA/_.WFU.3
M.]_7>G)RZ[W!H/O(TY:/VB-O"NO6T#4;-JGKHMJP!;^:J-Q4<?'()[.??\*^
M\ZMI3"')8DBR!(BL-_KN?O1=&[MM]+>&?FO8Y/G'64 )#B^GCX?#.D3Y(:51
M'Q4/49BZU/'[L,0 (P$.O3VLYZ.W]]&S^GC+Q8(74CUO4+E"LI0L4\^67;Y1
MJ66S_?V#:1"VS-@Y[)(V J]#XM<AB172<]O?N^V_96&AE2AS5+&,(_F\X2CC
MZGEF<M6'7&V09#$D60)$U@M)L ])8)V)=RH*U5D7AI=I: I',%@+8>3I<\\
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
M8 O9*L$'\(][[^X]H[MHS<6KS $4>BLHDQ,G5ZJ\=%V9YE!@.> E,'VSX*+
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
M6-1*?8*R[_JKX>7N):3="U0?_P-02P,$%     @ TX %6?,@BWGI 0  $B(
M !H   !X;"]?<F5L<R]W;W)K8F]O:RYX;6PN<F5L<\W:.T[#0!2%X:U$7@"3
M^YCP4$)%0XO8@!4F#Y'$EF<0R>Z)0A&.14&#YE36V/+U7WVRQIZ_I%U;MMTA
M;[9]GASWNT->-)M2^H<0\G*3]FV^Z?IT.%]9=<.^+>?EL Y]NWQOURGH=#H+
MP\\9S>/\Y\S)ZZE/?YG8K5;;97KJEA_[="B_# Z?W?">-RF59O+:#NM4%DTX
M[JZG<[@<Y.8\N9D\ORV:X?E-FE [2"%(ZP<9!%G]((<@KQ\4(2C6#YI!T*Q^
MT"T$W=8/NH.@N_I!]Q!T7S](IBCCE"!IA#6!UH)<"X'7@F +@=B"9 N!V8)H
M"X':@FP+@=N"< N!W()T"X'=@G@+@=Z*>BN!WHIZ*X'>.GK9)M!;46\ET%M1
M;R706U%O)=!;46\ET%M1;R706U%O)=!;46\ET-M0;R/0VU!O(]#;4&\CT-M&
MFR4$>AOJ;01Z&^IM!'H;ZFT$>AOJ;01Z&^IM!'H;ZFT$>COJ[01Z.^KM!'H[
MZNT$>COJ[01Z^VBSFT!O1[V=0&]'O9U ;T>]G4!O1[V=0&]'O9U [XAZ1P*]
M(^H="?2.J'<DT#NBWI% [XAZ1P*]X^AC)8'>$?6.!'I'U#O^I]ZYG'8I7WN^
MU_C\_Z2ZG.]-U\=?EM\G1^Q<< [P"\CC%U!+ P04    " #3@ 59LFA)V-4!
M  "_(0  $P   %M#;VYT96YT7U1Y<&5S72YX;6S-VEU/@S 4!N"_LG!K1M>O
M^1'GC7JK7O@'*IP-,J!-V\WY[RU,331*7&;B>P.!MN<]M,ESQ>7CBZ,PV;5-
M%Q99%:.[8"P4%;4FY-91ET:6UK<FID>_8LX4:[,B)F:S.2ML%ZF+T]C7R*XN
M;VAI-DV<W.[2ZU#;;I%Y:D(VN=Y/[+,6F7&NJ0L3TSC;=N67E.E;0IY6#G-"
M5;MPDB9D[-N$?N3G@+=U]UOROBYI\F!\O#-MFL5V#0OQI:&0CY?XID>[7-8%
ME;;8M&E)'IPG4X:**+9-OB]Z,IX<TP[3_LJ/SA_*C 6FF0_>NI!.S-/A<>]'
MTJ^>NE2(?*S'/_$C,94^^ONH/^V2RE]FI^U]MGX]G$=@P^WX/?Y\QA_U#^Q#
M@/0A0?I0('UHD#[F('V<@O1Q!M+'.4@??(;2"(JH'(54CF(J1T&5HZC*45CE
M**YR%%@YBJP"15:!(JM D56@R"I09!4HL@H4606*K )%5H$BJT215:+(*E%D
ME2BR2A19)8JL$D56B2*K1)%5HLBJ4&15*+(J%%D5BJP*15:%(JM"D56AR*I0
M9%4HLFH4636*K!I%5HTBJT:15:/(JE%DU?\IZY.UZ[_^I:"_YZVIN_=\-ORW
M<?4*4$L! A0#%     @ TX %60=!36*!    L0   !               ( !
M     &1O8U!R;W!S+V%P<"YX;6Q02P$"% ,4    " #3@ 59*G<K!.\    K
M @  $0              @ &O    9&]C4')O<',O8V]R92YX;6Q02P$"% ,4
M    " #3@ 59F5R<(Q &  "<)P  $P              @ '- 0  >&PO=&AE
M;64O=&AE;64Q+GAM;%!+ 0(4 Q0    ( -. !5G^JJS2VP4   ,?   8
M          " @0X(  !X;"]W;W)K<VAE971S+W-H965T,2YX;6Q02P$"% ,4
M    " #3@ 59B0S(81\'  #((0  &               @($?#@  >&PO=V]R
M:W-H965T<R]S:&5E=#(N>&UL4$L! A0#%     @ TX %600$_8K= @  %@H
M !@              ("!=!4  'AL+W=O<FMS:&5E=',O<VAE970S+GAM;%!+
M 0(4 Q0    ( -. !5GC%_%N]08  !8C   8              " @8<8  !X
M;"]W;W)K<VAE971S+W-H965T-"YX;6Q02P$"% ,4    " #3@ 59S4Q]@Y0(
M  !Q10  &               @(&R'P  >&PO=V]R:W-H965T<R]S:&5E=#4N
M>&UL4$L! A0#%     @ TX %6<JC5PF'!P  -R(  !@              ("!
M?"@  'AL+W=O<FMS:&5E=',O<VAE970V+GAM;%!+ 0(4 Q0    ( -. !5G&
MEGA7W@8  '80   8              " @3DP  !X;"]W;W)K<VAE971S+W-H
M965T-RYX;6Q02P$"% ,4    " #3@ 59I4)"N,P$  !V"P  &
M    @(%--P  >&PO=V]R:W-H965T<R]S:&5E=#@N>&UL4$L! A0#%     @
MTX %6:X5#A8"!   ^ H  !@              ("!3SP  'AL+W=O<FMS:&5E
M=',O<VAE970Y+GAM;%!+ 0(4 Q0    ( -. !5GT ]@#>@(  ,P%   9
M          " @8=   !X;"]W;W)K<VAE971S+W-H965T,3 N>&UL4$L! A0#
M%     @ TX %60LC#1"$!@  Y!8  !D              ("!.$,  'AL+W=O
M<FMS:&5E=',O<VAE970Q,2YX;6Q02P$"% ,4    " #3@ 59&\(=2<0"  #/
M!@  &0              @('S20  >&PO=V]R:W-H965T<R]S:&5E=#$R+GAM
M;%!+ 0(4 Q0    ( -. !5D(?]]\!P,  /<(   9              " @>Y,
M  !X;"]W;W)K<VAE971S+W-H965T,3,N>&UL4$L! A0#%     @ TX %67Z8
MXHHR"@  'Q\  !D              ("!+%   'AL+W=O<FMS:&5E=',O<VAE
M970Q-"YX;6Q02P$"% ,4    " #3@ 5995T$D200  "<+P  &0
M    @(&56@  >&PO=V]R:W-H965T<R]S:&5E=#$U+GAM;%!+ 0(4 Q0    (
M -. !5FAO:^#9 T   XR   9              " @?!J  !X;"]W;W)K<VAE
M971S+W-H965T,38N>&UL4$L! A0#%     @ TX %6<%?!E*J!P  K!<  !D
M             ("!BW@  'AL+W=O<FMS:&5E=',O<VAE970Q-RYX;6Q02P$"
M% ,4    " #3@ 59D,#7XF %  !W#@  &0              @(%L@   >&PO
M=V]R:W-H965T<R]S:&5E=#$X+GAM;%!+ 0(4 Q0    ( -. !5G7<R54# 0
M /(+   9              " @0.&  !X;"]W;W)K<VAE971S+W-H965T,3DN
M>&UL4$L! A0#%     @ TX %6?/LOU_Y!@  1!$  !D              ("!
M1HH  'AL+W=O<FMS:&5E=',O<VAE970R,"YX;6Q02P$"% ,4    " #3@ 59
M<BTL08("  "\!P  &0              @(%VD0  >&PO=V]R:W-H965T<R]S
M:&5E=#(Q+GAM;%!+ 0(4 Q0    ( -. !5E&?V)3( 8  .4B   9
M      " @2^4  !X;"]W;W)K<VAE971S+W-H965T,C(N>&UL4$L! A0#%
M  @ TX %66%O\NI7!@  F!$  !D              ("!AIH  'AL+W=O<FMS
M:&5E=',O<VAE970R,RYX;6Q02P$"% ,4    " #3@ 59%HCYH' "  "E!0
M&0              @($4H0  >&PO=V]R:W-H965T<R]S:&5E=#(T+GAM;%!+
M 0(4 Q0    ( -. !5G0Y/YJ300  ,P1   9              " @;NC  !X
M;"]W;W)K<VAE971S+W-H965T,C4N>&UL4$L! A0#%     @ TX %68KF_ZNZ
M @  G@8  !D              ("!/Z@  'AL+W=O<FMS:&5E=',O<VAE970R
M-BYX;6Q02P$"% ,4    " #3@ 597(H\(-L"  "!"   &0
M@($PJP  >&PO=V]R:W-H965T<R]S:&5E=#(W+GAM;%!+ 0(4 Q0    ( -.
M!5D\H$JVJ@(  #$&   9              " @4*N  !X;"]W;W)K<VAE971S
M+W-H965T,C@N>&UL4$L! A0#%     @ TX %6>CUYK4 !   *0P  !D
M         ("!([$  'AL+W=O<FMS:&5E=',O<VAE970R.2YX;6Q02P$"% ,4
M    " #3@ 59T6HQ!0X&  !>%P  &0              @(%:M0  >&PO=V]R
M:W-H965T<R]S:&5E=#,P+GAM;%!+ 0(4 Q0    ( -. !5E#$H,E'@0  %\/
M   9              " @9^[  !X;"]W;W)K<VAE971S+W-H965T,S$N>&UL
M4$L! A0#%     @ TX %62LJ:1'/ P  @PL  !D              ("!]+\
M 'AL+W=O<FMS:&5E=',O<VAE970S,BYX;6Q02P$"% ,4    " #3@ 59]I^O
M^W<"  "^!0  &0              @('ZPP  >&PO=V]R:W-H965T<R]S:&5E
M=#,S+GAM;%!+ 0(4 Q0    ( -. !5FB2T(__ ,  "H4   9
M  " @:C&  !X;"]W;W)K<VAE971S+W-H965T,S0N>&UL4$L! A0#%     @
MTX %64*X7M%A @  , 8  !D              ("!V\H  'AL+W=O<FMS:&5E
M=',O<VAE970S-2YX;6Q02P$"% ,4    " #3@ 59J9CK0)X,  "3FP  &0
M            @(%SS0  >&PO=V]R:W-H965T<R]S:&5E=#,V+GAM;%!+ 0(4
M Q0    ( -. !5FB!,Q7) ,  ! ,   9              " @4C:  !X;"]W
M;W)K<VAE971S+W-H965T,S<N>&UL4$L! A0#%     @ TX %65YNJ-?: P
M$A   !D              ("!H]T  'AL+W=O<FMS:&5E=',O<VAE970S."YX
M;6Q02P$"% ,4    " #3@ 596-GWEN((  ".:P  &0              @(&T
MX0  >&PO=V]R:W-H965T<R]S:&5E=#,Y+GAM;%!+ 0(4 Q0    ( -. !5E,
M-?XY1 ,  $0-   9              " @<WJ  !X;"]W;W)K<VAE971S+W-H
M965T-# N>&UL4$L! A0#%     @ TX %66ZMWE F!0  CR\  !D
M     ("!2.X  'AL+W=O<FMS:&5E=',O<VAE970T,2YX;6Q02P$"% ,4
M" #3@ 59%OS -6\$  !T$P  &0              @(&E\P  >&PO=V]R:W-H
M965T<R]S:&5E=#0R+GAM;%!+ 0(4 Q0    ( -. !5FP8I \A@,   H-   9
M              " @4OX  !X;"]W;W)K<VAE971S+W-H965T-#,N>&UL4$L!
M A0#%     @ TX %6<\272J% @  ] <  !D              ("!"/P  'AL
M+W=O<FMS:&5E=',O<VAE970T-"YX;6Q02P$"% ,4    " #3@ 59N'HABJ #
M  " %@  &0              @('$_@  >&PO=V]R:W-H965T<R]S:&5E=#0U
M+GAM;%!+ 0(4 Q0    ( -. !5E[DFH%!@(  #0$   9              "
M@9L" 0!X;"]W;W)K<VAE971S+W-H965T-#8N>&UL4$L! A0#%     @ TX %
M65$IT"^M @  3PD  !D              ("!V 0! 'AL+W=O<FMS:&5E=',O
M<VAE970T-RYX;6Q02P$"% ,4    " #3@ 59U*;F!H<"  !*!@  &0
M        @(&\!P$ >&PO=V]R:W-H965T<R]S:&5E=#0X+GAM;%!+ 0(4 Q0
M   ( -. !5DPP7ZZP04  *(I   9              " @7H* 0!X;"]W;W)K
M<VAE971S+W-H965T-#DN>&UL4$L! A0#%     @ TX %6<1%;B"D$0  R-,
M !D              ("!<A ! 'AL+W=O<FMS:&5E=',O<VAE970U,"YX;6Q0
M2P$"% ,4    " #3@ 59#2.77+<$   $(   &0              @(%-(@$
M>&PO=V]R:W-H965T<R]S:&5E=#4Q+GAM;%!+ 0(4 Q0    ( -. !5G5"_V!
MJ 8  &TP   9              " @3LG 0!X;"]W;W)K<VAE971S+W-H965T
M-3(N>&UL4$L! A0#%     @ TX %66H&EE3P @  6 H  !D
M ("!&BX! 'AL+W=O<FMS:&5E=',O<VAE970U,RYX;6Q02P$"% ,4    " #3
M@ 59\F@(CFH#   U#   &0              @(%!,0$ >&PO=V]R:W-H965T
M<R]S:&5E=#4T+GAM;%!+ 0(4 Q0    ( -. !5D[5[PC0 0  / 9   9
M          " @>(T 0!X;"]W;W)K<VAE971S+W-H965T-34N>&UL4$L! A0#
M%     @ TX %69A ]+:P P  $A$  !D              ("!63D! 'AL+W=O
M<FMS:&5E=',O<VAE970U-BYX;6Q02P$"% ,4    " #3@ 59= 0[F(H"  "<
M!P  &0              @(% /0$ >&PO=V]R:W-H965T<R]S:&5E=#4W+GAM
M;%!+ 0(4 Q0    ( -. !5G@7#/810,  - 4   -              "  0%
M 0!X;"]S='EL97,N>&UL4$L! A0#%     @ TX %69>*NQS     $P(   L
M             ( !<4,! %]R96QS+RYR96QS4$L! A0#%     @ TX %6>M:
M. :=!   Q"4   \              ( !6D0! 'AL+W=O<FMB;V]K+GAM;%!+
M 0(4 Q0    ( -. !5GS((MYZ0$  !(B   :              "  21) 0!X
M;"]?<F5L<R]W;W)K8F]O:RYX;6PN<F5L<U!+ 0(4 Q0    ( -. !5FR:$G8
MU0$  +\A   3              "  45+ 0!;0V]N=&5N=%]4>7!E<UTN>&UL
64$L%!@    !! $$ OA$  $M- 0    $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>72
<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>73
<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>75
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.24.2.u1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>226</ContextCount>
  <ElementCount>303</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>64</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>6</UnitCount>
  <MyReports>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>995200090 - Document - Document and Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation</Role>
      <ShortName>Document and Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>995200100 - Statement - Condensed Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets</Role>
      <ShortName>Condensed Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>995200105 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Condensed Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>995200200 - Statement - Condensed Consolidated Statements of Operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations</Role>
      <ShortName>Condensed Consolidated Statements of Operations</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>995200300 - Statement - Condensed Consolidated Statements of Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity</Role>
      <ShortName>Condensed Consolidated Statements of Stockholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>995200400 - Statement - Condensed Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows</Role>
      <ShortName>Condensed Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>995210101 - Disclosure - Nature of Business and Operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperations</Role>
      <ShortName>Nature of Business and Operations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>995210201 - Disclosure - Basis of Presentation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureBasisOfPresentation</Role>
      <ShortName>Basis of Presentation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>995210301 - Disclosure - Summary of Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureSummaryOfSignificantAccountingPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>995210401 - Disclosure - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureInventories</Role>
      <ShortName>Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>995210501 - Disclosure - Goodwill and Intangible Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssets</Role>
      <ShortName>Goodwill and Intangible Assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>995210601 - Disclosure - Accrued Expenses</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureAccruedExpenses</Role>
      <ShortName>Accrued Expenses</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>995210701 - Disclosure - Warranty Reserves</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureWarrantyReserves</Role>
      <ShortName>Warranty Reserves</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>995210801 - Disclosure - Credit Agreement</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureCreditAgreement</Role>
      <ShortName>Credit Agreement</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>995210901 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>995211001 - Disclosure - Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureStockholdersEquity</Role>
      <ShortName>Stockholders' Equity</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>995211101 - Disclosure - Revenue</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureRevenue</Role>
      <ShortName>Revenue</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>995211201 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureIncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>995211301 - Disclosure - Net Income (Loss) Per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShare</Role>
      <ShortName>Net Income (Loss) Per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>995211401 - Disclosure - Fair Value Measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureFairValueMeasurements</Role>
      <ShortName>Fair Value Measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>995410 - Disclosure - Pay vs Performance Disclosure</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ecd/role/PvpDisclosure</Role>
      <ShortName>Pay vs Performance Disclosure</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>995445 - Disclosure - Insider Trading Arrangements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements</Role>
      <ShortName>Insider Trading Arrangements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>99920302 - Disclosure - Summary of Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureSummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>23</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>99930403 - Disclosure - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureInventoriesTables</Role>
      <ShortName>Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureInventories</ParentRole>
      <Position>24</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>99930503 - Disclosure - Goodwill and Intangible Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsTables</Role>
      <ShortName>Goodwill and Intangible Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssets</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>99930603 - Disclosure - Accrued Expenses (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureAccruedExpensesTables</Role>
      <ShortName>Accrued Expenses (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureAccruedExpenses</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>99930703 - Disclosure - Warranty Reserves (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureWarrantyReservesTables</Role>
      <ShortName>Warranty Reserves (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureWarrantyReserves</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>99930803 - Disclosure - Credit Agreement (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureCreditAgreementTables</Role>
      <ShortName>Credit Agreement (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureCreditAgreement</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>99930903 - Disclosure - Commitments and Contingencies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesTables</Role>
      <ShortName>Commitments and Contingencies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingencies</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>99931003 - Disclosure - Stockholders' Equity (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureStockholdersEquityTables</Role>
      <ShortName>Stockholders' Equity (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureStockholdersEquity</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>99931103 - Disclosure - Revenue (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureRevenueTables</Role>
      <ShortName>Revenue (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureRevenue</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>99931303 - Disclosure - Net Income (Loss) Per Shar (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerSharTables</Role>
      <ShortName>Net Income (Loss) Per Shar (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShare</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>99931403 - Disclosure - Fair Value Measurements (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsTables</Role>
      <ShortName>Fair Value Measurements (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureFairValueMeasurements</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>99940101 - Disclosure - Nature of Business and Operations (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails</Role>
      <ShortName>Nature of Business and Operations (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperations</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>99940401 - Disclosure - Inventories (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureInventoriesDetails</Role>
      <ShortName>Inventories (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureInventoriesTables</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>99940501 - Disclosure - Goodwill And Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails</Role>
      <ShortName>Goodwill And Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>36</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>99940601 - Disclosure - Accrued Expenses (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureAccruedExpensesDetails</Role>
      <ShortName>Accrued Expenses (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureAccruedExpensesTables</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>99940701 - Disclosure - Warranty Reserves (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureWarrantyReservesDetails</Role>
      <ShortName>Warranty Reserves (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureWarrantyReservesTables</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>99940801 - Disclosure - Credit Agreement (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails</Role>
      <ShortName>Credit Agreement (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureCreditAgreementTables</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>99940802 - Disclosure - Credit Agreement - Maturities of Debt (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails</Role>
      <ShortName>Credit Agreement - Maturities of Debt (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>40</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>99940901 - Disclosure - Commitments and Contingencies - Lease Obligations (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails</Role>
      <ShortName>Commitments and Contingencies - Lease Obligations (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>99940902 - Disclosure - Commitments and Contingencies - Lease related assets and liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails</Role>
      <ShortName>Commitments and Contingencies - Lease related assets and liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>99940903 - Disclosure - Commitments and Contingencies - Undiscounted cash flows (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails</Role>
      <ShortName>Commitments and Contingencies - Undiscounted cash flows (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>99940904 - Disclosure - Commitments and Contingencies - Lease commitments and operating lease cost (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseCommitmentsAndOperatingLeaseCostDetails</Role>
      <ShortName>Commitments and Contingencies - Lease commitments and operating lease cost (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>99940905 - Disclosure - Commitments and Contingencies - Major Vendors (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails</Role>
      <ShortName>Commitments and Contingencies - Major Vendors (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>45</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>99940906 - Disclosure - Commitments and Contingencies - Purchase Commitments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesPurchaseCommitmentsDetails</Role>
      <ShortName>Commitments and Contingencies - Purchase Commitments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>99940907 - Disclosure - Commitments and Contingencies - Retirement Plan (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesRetirementPlanDetails</Role>
      <ShortName>Commitments and Contingencies - Retirement Plan (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>99940908 - Disclosure - Commitments and Contingencies - Legal Proceedings (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails</Role>
      <ShortName>Commitments and Contingencies - Legal Proceedings (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>99941001 - Disclosure - Stockholders' Equity - Stock-Based Compensation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails</Role>
      <ShortName>Stockholders' Equity - Stock-Based Compensation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>99941002 - Disclosure - Stockholders' Equity - Stock Options and Restricted Stock (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails</Role>
      <ShortName>Stockholders' Equity - Stock Options and Restricted Stock (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>99941003 - Disclosure - Stockholders' Equity - Employee Stock Purchase Plan (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails</Role>
      <ShortName>Stockholders' Equity - Employee Stock Purchase Plan (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>99941101 - Disclosure - Revenue (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureRevenueDetails</Role>
      <ShortName>Revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureRevenueTables</ParentRole>
      <Position>52</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>99941201 - Disclosure - Income Taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureIncomeTaxesDetails</Role>
      <ShortName>Income Taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureIncomeTaxes</ParentRole>
      <Position>53</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>99941301 - Disclosure - Net Income (Loss) Per Share - Basic and Diluted Net income (Loss) Per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareBasicAndDilutedNetIncomeLossPerShareDetails</Role>
      <ShortName>Net Income (Loss) Per Share - Basic and Diluted Net income (Loss) Per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerSharTables</ParentRole>
      <Position>54</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>99941302 - Disclosure - Net Income (Loss) Per Share - Antidilutive Securities Excluded From Computation of Earnings Per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails</Role>
      <ShortName>Net Income (Loss) Per Share - Antidilutive Securities Excluded From Computation of Earnings Per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerSharTables</ParentRole>
      <Position>55</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>99941401 - Disclosure - Fair Value Measurements - Earn out liability (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsEarnOutLiabilityDetails</Role>
      <ShortName>Fair Value Measurements - Earn out liability (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="tcmd-20240630x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>99941402 - Disclosure - Fair Value Measurements - Fair Value Hierarchy (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsFairValueHierarchyDetails</Role>
      <ShortName>Fair Value Measurements - Fair Value Hierarchy (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File>tcmd-20240630.xsd</File>
    <File>tcmd-20240630_cal.xml</File>
    <File>tcmd-20240630_def.xml</File>
    <File>tcmd-20240630_lab.xml</File>
    <File>tcmd-20240630_pre.xml</File>
    <File doctype="10-Q" isDefinitelyFs="true" isUsgaap="true" original="tcmd-20240630x10q.htm">tcmd-20240630x10q.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="744">http://fasb.org/us-gaap/2024</BaseTaxonomy>
    <BaseTaxonomy items="29">http://xbrl.sec.gov/dei/2024</BaseTaxonomy>
    <BaseTaxonomy items="32">http://xbrl.sec.gov/ecd/2024</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>78
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "tcmd-20240630x10q.htm": {
   "nsprefix": "tcmd",
   "nsuri": "http://www.tactilemedical.com/20240630",
   "dts": {
    "schema": {
     "local": [
      "tcmd-20240630.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/arcrole/esma-arcrole-2018-11-21.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/2023/calculation-1.1.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd",
      "https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd",
      "https://xbrl.fasb.org/srt/2024/elts/srt-roles-2024.xsd",
      "https://xbrl.fasb.org/srt/2024/elts/srt-types-2024.xsd",
      "https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd",
      "https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd",
      "https://xbrl.fasb.org/us-gaap/2024/elts/us-types-2024.xsd",
      "https://xbrl.sec.gov/country/2024/country-2024.xsd",
      "https://xbrl.sec.gov/dei/2024/dei-2024.xsd",
      "https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd",
      "https://xbrl.sec.gov/ecd/2024/ecd-sub-2024.xsd",
      "https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd"
     ]
    },
    "calculationLink": {
     "local": [
      "tcmd-20240630_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "tcmd-20240630_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "tcmd-20240630_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "tcmd-20240630_pre.xml"
     ]
    },
    "inline": {
     "local": [
      "tcmd-20240630x10q.htm"
     ]
    }
   },
   "keyStandard": 268,
   "keyCustom": 35,
   "axisStandard": 23,
   "axisCustom": 0,
   "memberStandard": 32,
   "memberCustom": 30,
   "hidden": {
    "total": 30,
    "http://xbrl.sec.gov/dei/2024": 5,
    "http://fasb.org/us-gaap/2024": 24,
    "http://www.tactilemedical.com/20240630": 1
   },
   "contextCount": 226,
   "entityCount": 1,
   "segmentCount": 64,
   "elementCount": 586,
   "unitCount": 6,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2024": 744,
    "http://xbrl.sec.gov/ecd/2024": 32,
    "http://xbrl.sec.gov/dei/2024": 29
   },
   "report": {
    "R1": {
     "role": "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation",
     "longName": "995200090 - Document - Document and Entity Information",
     "shortName": "Document and Entity Information",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets",
     "longName": "995200100 - Statement - Condensed Consolidated Balance Sheets",
     "shortName": "Condensed Consolidated Balance Sheets",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "2",
     "firstAnchor": {
      "contextRef": "As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R3": {
     "role": "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical",
     "longName": "995200105 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)",
     "shortName": "Condensed Consolidated Balance Sheets (Parenthetical)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "3",
     "firstAnchor": {
      "contextRef": "As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g",
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "unitRef": "Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "us-gaap:PreferredStockParOrStatedValuePerShare",
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g",
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "unitRef": "Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "us-gaap:PreferredStockParOrStatedValuePerShare",
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R4": {
     "role": "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations",
     "longName": "995200200 - Statement - Condensed Consolidated Statements of Operations",
     "shortName": "Condensed Consolidated Statements of Operations",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "4",
     "firstAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "us-gaap:CostOfRevenue",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "unique": true
     }
    },
    "R5": {
     "role": "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity",
     "longName": "995200300 - Statement - Condensed Consolidated Statements of Stockholders' Equity",
     "shortName": "Condensed Consolidated Statements of Stockholders' Equity",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "5",
     "firstAnchor": {
      "contextRef": "As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_yLsLXAjRdk6_unp2ysQ8AQ",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_yLsLXAjRdk6_unp2ysQ8AQ",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R6": {
     "role": "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows",
     "longName": "995200400 - Statement - Condensed Consolidated Statements of Cash Flows",
     "shortName": "Condensed Consolidated Statements of Cash Flows",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "6",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ProfitLoss",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ProfitLoss",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R7": {
     "role": "http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperations",
     "longName": "995210101 - Disclosure - Nature of Business and Operations",
     "shortName": "Nature of Business and Operations",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "7",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:NatureOfOperations",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:NatureOfOperations",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R8": {
     "role": "http://www.tactilemedical.com/role/DisclosureBasisOfPresentation",
     "longName": "995210201 - Disclosure - Basis of Presentation",
     "shortName": "Basis of Presentation",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "8",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R9": {
     "role": "http://www.tactilemedical.com/role/DisclosureSummaryOfSignificantAccountingPolicies",
     "longName": "995210301 - Disclosure - Summary of Significant Accounting Policies",
     "shortName": "Summary of Significant Accounting Policies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "9",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R10": {
     "role": "http://www.tactilemedical.com/role/DisclosureInventories",
     "longName": "995210401 - Disclosure - Inventories",
     "shortName": "Inventories",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "10",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R11": {
     "role": "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssets",
     "longName": "995210501 - Disclosure - Goodwill and Intangible Assets",
     "shortName": "Goodwill and Intangible Assets",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "11",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R12": {
     "role": "http://www.tactilemedical.com/role/DisclosureAccruedExpenses",
     "longName": "995210601 - Disclosure - Accrued Expenses",
     "shortName": "Accrued Expenses",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "12",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "tcmd:AccruedExpensesDisclosureCurrentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "tcmd:AccruedExpensesDisclosureCurrentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R13": {
     "role": "http://www.tactilemedical.com/role/DisclosureWarrantyReserves",
     "longName": "995210701 - Disclosure - Warranty Reserves",
     "shortName": "Warranty Reserves",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "13",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ProductWarrantyDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ProductWarrantyDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R14": {
     "role": "http://www.tactilemedical.com/role/DisclosureCreditAgreement",
     "longName": "995210801 - Disclosure - Credit Agreement",
     "shortName": "Credit Agreement",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "14",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R15": {
     "role": "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingencies",
     "longName": "995210901 - Disclosure - Commitments and Contingencies",
     "shortName": "Commitments and Contingencies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "15",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R16": {
     "role": "http://www.tactilemedical.com/role/DisclosureStockholdersEquity",
     "longName": "995211001 - Disclosure - Stockholders' Equity",
     "shortName": "Stockholders' Equity",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "16",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R17": {
     "role": "http://www.tactilemedical.com/role/DisclosureRevenue",
     "longName": "995211101 - Disclosure - Revenue",
     "shortName": "Revenue",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "17",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R18": {
     "role": "http://www.tactilemedical.com/role/DisclosureIncomeTaxes",
     "longName": "995211201 - Disclosure - Income Taxes",
     "shortName": "Income Taxes",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "18",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R19": {
     "role": "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShare",
     "longName": "995211301 - Disclosure - Net Income (Loss) Per Share",
     "shortName": "Net Income (Loss) Per Share",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "19",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R20": {
     "role": "http://www.tactilemedical.com/role/DisclosureFairValueMeasurements",
     "longName": "995211401 - Disclosure - Fair Value Measurements",
     "shortName": "Fair Value Measurements",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "20",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R21": {
     "role": "http://xbrl.sec.gov/ecd/role/PvpDisclosure",
     "longName": "995410 - Disclosure - Pay vs Performance Disclosure",
     "shortName": "Pay vs Performance Disclosure",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "21",
     "firstAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R22": {
     "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements",
     "longName": "995445 - Disclosure - Insider Trading Arrangements",
     "shortName": "Insider Trading Arrangements",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "22",
     "firstAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "ecd:Rule10b51ArrAdoptedFlag",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "ecd:Rule10b51ArrAdoptedFlag",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R23": {
     "role": "http://www.tactilemedical.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies",
     "longName": "99920302 - Disclosure - Summary of Significant Accounting Policies (Policies)",
     "shortName": "Summary of Significant Accounting Policies (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "23",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R24": {
     "role": "http://www.tactilemedical.com/role/DisclosureInventoriesTables",
     "longName": "99930403 - Disclosure - Inventories (Tables)",
     "shortName": "Inventories (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "24",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R25": {
     "role": "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsTables",
     "longName": "99930503 - Disclosure - Goodwill and Intangible Assets (Tables)",
     "shortName": "Goodwill and Intangible Assets (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "25",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R26": {
     "role": "http://www.tactilemedical.com/role/DisclosureAccruedExpensesTables",
     "longName": "99930603 - Disclosure - Accrued Expenses (Tables)",
     "shortName": "Accrued Expenses (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "26",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "tcmd:ScheduleOfAccruedExpensesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "tcmd:AccruedExpensesDisclosureCurrentTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "tcmd:ScheduleOfAccruedExpensesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "tcmd:AccruedExpensesDisclosureCurrentTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R27": {
     "role": "http://www.tactilemedical.com/role/DisclosureWarrantyReservesTables",
     "longName": "99930703 - Disclosure - Warranty Reserves (Tables)",
     "shortName": "Warranty Reserves (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "27",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R28": {
     "role": "http://www.tactilemedical.com/role/DisclosureCreditAgreementTables",
     "longName": "99930803 - Disclosure - Credit Agreement (Tables)",
     "shortName": "Credit Agreement (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "28",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R29": {
     "role": "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesTables",
     "longName": "99930903 - Disclosure - Commitments and Contingencies (Tables)",
     "shortName": "Commitments and Contingencies (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "29",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "tcmd:AssetsAndLiabilitiesLesseeTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "tcmd:AssetsAndLiabilitiesLesseeTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R30": {
     "role": "http://www.tactilemedical.com/role/DisclosureStockholdersEquityTables",
     "longName": "99931003 - Disclosure - Stockholders' Equity (Tables)",
     "shortName": "Stockholders' Equity (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "30",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R31": {
     "role": "http://www.tactilemedical.com/role/DisclosureRevenueTables",
     "longName": "99931103 - Disclosure - Revenue (Tables)",
     "shortName": "Revenue (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "31",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R32": {
     "role": "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerSharTables",
     "longName": "99931303 - Disclosure - Net Income (Loss) Per Shar (Tables)",
     "shortName": "Net Income (Loss) Per Shar (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "32",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R33": {
     "role": "http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsTables",
     "longName": "99931403 - Disclosure - Fair Value Measurements (Tables)",
     "shortName": "Fair Value Measurements (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "33",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w",
      "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R34": {
     "role": "http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails",
     "longName": "99940101 - Disclosure - Nature of Business and Operations (Details)",
     "shortName": "Nature of Business and Operations (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "34",
     "firstAnchor": {
      "contextRef": "Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA",
      "name": "us-gaap:ProceedsFromIssuanceOfCommonStock",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_8_2_2016_To_8_2_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_IPOMember_PBovED4p10Ca25HCHdj3XQ",
      "name": "us-gaap:StockIssuedDuringPeriodSharesNewIssues",
      "unitRef": "Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "us-gaap:NatureOfOperations",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "unique": true
     }
    },
    "R35": {
     "role": "http://www.tactilemedical.com/role/DisclosureInventoriesDetails",
     "longName": "99940401 - Disclosure - Inventories (Details)",
     "shortName": "Inventories (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "35",
     "firstAnchor": {
      "contextRef": "As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g",
      "name": "us-gaap:InventoryFinishedGoods",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g",
      "name": "us-gaap:InventoryFinishedGoods",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R36": {
     "role": "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails",
     "longName": "99940501 - Disclosure - Goodwill And Intangible Assets (Details)",
     "shortName": "Goodwill And Intangible Assets (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "36",
     "firstAnchor": {
      "contextRef": "As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g",
      "name": "us-gaap:Goodwill",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_7_1_2023_To_9_30_2023_W_WVw8V8tUyv9jgci7uifw",
      "name": "us-gaap:AssetImpairmentCharges",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "unique": true
     }
    },
    "R37": {
     "role": "http://www.tactilemedical.com/role/DisclosureAccruedExpensesDetails",
     "longName": "99940601 - Disclosure - Accrued Expenses (Details)",
     "shortName": "Accrued Expenses (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "37",
     "firstAnchor": {
      "contextRef": "As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g",
      "name": "us-gaap:ProductWarrantyAccrualClassifiedCurrent",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g",
      "name": "us-gaap:AccruedProfessionalFeesCurrent",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "tcmd:ScheduleOfAccruedExpensesTableTextBlock",
       "tcmd:AccruedExpensesDisclosureCurrentTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "unique": true
     }
    },
    "R38": {
     "role": "http://www.tactilemedical.com/role/DisclosureWarrantyReservesDetails",
     "longName": "99940701 - Disclosure - Warranty Reserves (Details)",
     "shortName": "Warranty Reserves (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "38",
     "firstAnchor": {
      "contextRef": "As_Of_3_31_2024_s2vwRyEnHUaXSAoq3iPMfA",
      "name": "us-gaap:StandardProductWarrantyAccrual",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "As_Of_3_31_2024_s2vwRyEnHUaXSAoq3iPMfA",
      "name": "us-gaap:StandardProductWarrantyAccrual",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R39": {
     "role": "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails",
     "longName": "99940801 - Disclosure - Credit Agreement (Details)",
     "shortName": "Credit Agreement (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "39",
     "firstAnchor": {
      "contextRef": "Duration_9_8_2021_To_9_8_2021_9hihkujZ3Ey1eqaoAkIhQg",
      "name": "tcmd:LineOfCreditThresholdContingentIncreaseInBorrowingCapacity",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_9_8_2021_To_9_8_2021_9hihkujZ3Ey1eqaoAkIhQg",
      "name": "tcmd:LineOfCreditThresholdContingentIncreaseInBorrowingCapacity",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R40": {
     "role": "http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails",
     "longName": "99940802 - Disclosure - Credit Agreement - Maturities of Debt (Details)",
     "shortName": "Credit Agreement - Maturities of Debt (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "40",
     "firstAnchor": {
      "contextRef": "As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g",
      "name": "us-gaap:LongTermDebt",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ",
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "unique": true
     }
    },
    "R41": {
     "role": "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails",
     "longName": "99940901 - Disclosure - Commitments and Contingencies - Lease Obligations (Details)",
     "shortName": "Commitments and Contingencies - Lease Obligations (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "41",
     "firstAnchor": {
      "contextRef": "As_Of_6_30_2024_srt_RangeAxis_srt_MinimumMember_4VKZ5hWU0E-xw8tULb1H6A",
      "name": "us-gaap:LesseeOperatingLeaseTermOfContract",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "As_Of_6_30_2024_srt_RangeAxis_srt_MinimumMember_4VKZ5hWU0E-xw8tULb1H6A",
      "name": "us-gaap:LesseeOperatingLeaseTermOfContract",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R42": {
     "role": "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails",
     "longName": "99940902 - Disclosure - Commitments and Contingencies - Lease related assets and liabilities (Details)",
     "shortName": "Commitments and Contingencies - Lease related assets and liabilities (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "42",
     "firstAnchor": {
      "contextRef": "As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g",
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g",
      "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "tcmd:AssetsAndLiabilitiesLesseeTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "unique": true
     }
    },
    "R43": {
     "role": "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails",
     "longName": "99940903 - Disclosure - Commitments and Contingencies - Undiscounted cash flows (Details)",
     "shortName": "Commitments and Contingencies - Undiscounted cash flows (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "43",
     "firstAnchor": {
      "contextRef": "As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:OperatingLeaseLeaseIncomeTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:OperatingLeaseLeaseIncomeTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R44": {
     "role": "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseCommitmentsAndOperatingLeaseCostDetails",
     "longName": "99940904 - Disclosure - Commitments and Contingencies - Lease commitments and operating lease cost (Details)",
     "shortName": "Commitments and Contingencies - Lease commitments and operating lease cost (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "44",
     "firstAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense",
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense",
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R45": {
     "role": "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails",
     "longName": "99940905 - Disclosure - Commitments and Contingencies - Major Vendors (Details)",
     "shortName": "Commitments and Contingencies - Major Vendors (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "45",
     "firstAnchor": {
      "contextRef": "As_Of_6_30_2024_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_q93ziSPyYkK8KDsTbE3dTA",
      "name": "tcmd:NumberOfVendors",
      "unitRef": "Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_dBewljXhJECxvJt1x7cYQw",
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "unitRef": "Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "unique": true
     }
    },
    "R46": {
     "role": "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesPurchaseCommitmentsDetails",
     "longName": "99940906 - Disclosure - Commitments and Contingencies - Purchase Commitments (Details)",
     "shortName": "Commitments and Contingencies - Purchase Commitments (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "46",
     "firstAnchor": {
      "contextRef": "As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g",
      "name": "us-gaap:PurchaseObligationDueInNextTwelveMonths",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g",
      "name": "us-gaap:PurchaseObligationDueInNextTwelveMonths",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R47": {
     "role": "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesRetirementPlanDetails",
     "longName": "99940907 - Disclosure - Commitments and Contingencies - Retirement Plan (Details)",
     "shortName": "Commitments and Contingencies - Retirement Plan (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "47",
     "firstAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_b2t1gr1hEkOEJlucH2wJQw",
      "name": "us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_b2t1gr1hEkOEJlucH2wJQw",
      "name": "us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R48": {
     "role": "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails",
     "longName": "99940908 - Disclosure - Commitments and Contingencies - Legal Proceedings (Details)",
     "shortName": "Commitments and Contingencies - Legal Proceedings (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "48",
     "firstAnchor": {
      "contextRef": "As_Of_5_24_2022_srt_LitigationCaseAxis_tcmd_WeaverLawsuitMember_oZZDdUJeUUKw3KK_HLckag",
      "name": "tcmd:NumberOfOfficerAndDirectors",
      "unitRef": "Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "As_Of_5_24_2022_srt_LitigationCaseAxis_tcmd_WeaverLawsuitMember_oZZDdUJeUUKw3KK_HLckag",
      "name": "tcmd:NumberOfOfficerAndDirectors",
      "unitRef": "Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R49": {
     "role": "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails",
     "longName": "99941001 - Disclosure - Stockholders' Equity - Stock-Based Compensation (Details)",
     "shortName": "Stockholders' Equity - Stock-Based Compensation (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "49",
     "firstAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_BZcJLooymkqAS-KE13NMYA",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "unique": true
     }
    },
    "R50": {
     "role": "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails",
     "longName": "99941002 - Disclosure - Stockholders' Equity - Stock Options and Restricted Stock (Details)",
     "shortName": "Stockholders' Equity - Stock Options and Restricted Stock (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "50",
     "firstAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_cioTeAwoy0-99vBb2rKQAA",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "unique": true
     }
    },
    "R51": {
     "role": "http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails",
     "longName": "99941003 - Disclosure - Stockholders' Equity - Employee Stock Purchase Plan (Details)",
     "shortName": "Stockholders' Equity - Employee Stock Purchase Plan (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "51",
     "firstAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_7fujnUGjr0OaOiKI4BNzOQ",
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent",
      "unitRef": "Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "unique": true
     }
    },
    "R52": {
     "role": "http://www.tactilemedical.com/role/DisclosureRevenueDetails",
     "longName": "99941101 - Disclosure - Revenue (Details)",
     "shortName": "Revenue (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "52",
     "firstAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "tcmd:PercentageOfRevenue",
      "unitRef": "Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "unique": true
     }
    },
    "R53": {
     "role": "http://www.tactilemedical.com/role/DisclosureIncomeTaxesDetails",
     "longName": "99941201 - Disclosure - Income Taxes (Details)",
     "shortName": "Income Taxes (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "53",
     "firstAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "us-gaap:IncomeTaxExpenseBenefit",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations",
      "unitRef": "Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q",
      "xsiNil": "false",
      "lang": null,
      "decimals": "3",
      "ancestors": [
       "span",
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "unique": true
     }
    },
    "R54": {
     "role": "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareBasicAndDilutedNetIncomeLossPerShareDetails",
     "longName": "99941301 - Disclosure - Net Income (Loss) Per Share - Basic and Diluted Net income (Loss) Per Share (Details)",
     "shortName": "Net Income (Loss) Per Share - Basic and Diluted Net income (Loss) Per Share (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "54",
     "firstAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "us-gaap:EarningsPerShareBasic",
      "unitRef": "Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "unique": true
     }
    },
    "R55": {
     "role": "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails",
     "longName": "99941302 - Disclosure - Net Income (Loss) Per Share - Antidilutive Securities Excluded From Computation of Earnings Per Share (Details)",
     "shortName": "Net Income (Loss) Per Share - Antidilutive Securities Excluded From Computation of Earnings Per Share (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "55",
     "firstAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "unitRef": "Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "unitRef": "Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R56": {
     "role": "http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsEarnOutLiabilityDetails",
     "longName": "99941401 - Disclosure - Fair Value Measurements - Earn out liability (Details)",
     "shortName": "Fair Value Measurements - Earn out liability (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "56",
     "firstAnchor": {
      "contextRef": "Duration_11_28_2023_To_11_28_2023_SKtlU9g6_ECOEbD8aG-BaA",
      "name": "us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_1_1_2023_To_3_31_2023_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_t0C16WESXk2zbF3G31Itxg",
      "name": "us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "unique": true
     }
    },
    "R57": {
     "role": "http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsFairValueHierarchyDetails",
     "longName": "99941402 - Disclosure - Fair Value Measurements - Fair Value Hierarchy (Details)",
     "shortName": "Fair Value Measurements - Fair Value Hierarchy (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "57",
     "firstAnchor": {
      "contextRef": "Duration_11_28_2023_To_11_28_2023_SKtlU9g6_ECOEbD8aG-BaA",
      "name": "us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_5_25_2023_To_5_25_2023_pzXlr5QgaUOGWFu4gYChbQ",
      "name": "tcmd:BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment",
      "unitRef": "Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tcmd-20240630x10q.htm",
      "unique": true
     }
    }
   },
   "tag": {
    "us-gaap_AccountingPoliciesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountingPoliciesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Summary of Significant Accounting Policies"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountsPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsPayableCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts Payable, Current",
        "terseLabel": "Accounts payable",
        "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r44",
      "r589"
     ]
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsReceivableNetCurrent",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts Receivable, Net, Current",
        "terseLabel": "Accounts receivable",
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current."
       }
      }
     },
     "auth_ref": [
      "r720"
     ]
    },
    "tcmd_AccruedClinicalStudiesExpensesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "AccruedClinicalStudiesExpensesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureAccruedExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The carrying amount as of the balance sheet date of accrued clinical studies.",
        "label": "Accrued Clinical Studies Expenses, Current",
        "terseLabel": "Clinical studies"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_AccruedExpensesDisclosureCurrentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "AccruedExpensesDisclosureCurrentTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureAccruedExpenses"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for accrued expenses that are classified as current at the end of the reporting period.",
        "label": "Accrued Expenses Disclosure, Current [Text Block]",
        "terseLabel": "Accrued Expenses"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccruedIncomeTaxesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedIncomeTaxesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Income Taxes, Current",
        "terseLabel": "Income taxes payable",
        "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations."
       }
      }
     },
     "auth_ref": [
      "r47",
      "r96"
     ]
    },
    "us-gaap_AccruedIncomeTaxesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedIncomeTaxesNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Income Taxes, Noncurrent",
        "verboseLabel": "Income taxes payable, non-current",
        "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all domestic and foreign income tax obligations due beyond one year or the operating cycle, whichever is longer. Alternate captions include income taxes payable, noncurrent."
       }
      }
     },
     "auth_ref": [
      "r51",
      "r96"
     ]
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedLiabilitiesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureAccruedExpensesDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Liabilities, Current",
        "terseLabel": "Accrued expenses",
        "totalLabel": "Total",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r47"
     ]
    },
    "us-gaap_AccruedLiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedLiabilitiesCurrentAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Expenses"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccruedProfessionalFeesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedProfessionalFeesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureAccruedExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Professional Fees, Current",
        "terseLabel": "Legal and consulting",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for professional fees, such as for legal and accounting services received. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r47"
     ]
    },
    "tcmd_AccruedSalesAndUseTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "AccruedSalesAndUseTax",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureAccruedExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations relating to sales and use tax.",
        "label": "Accrued Sales And Use Tax",
        "terseLabel": "Sales and use tax"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_AccruedTravelAndEntertainmentCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "AccruedTravelAndEntertainmentCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureAccruedExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for travel and entertainment expenses. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Travel And Entertainment Current",
        "terseLabel": "Travel"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_Additional402vDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "Additional402vDisclosureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional 402(v) Disclosure [Text Block]",
        "terseLabel": "Additional 402(v) Disclosure"
       }
      }
     },
     "auth_ref": [
      "r644"
     ]
    },
    "tcmd_AdditionalOfficeSpaceAdded": {
     "xbrltype": "areaItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "AdditionalOfficeSpaceAdded",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additional office space added to the lease.",
        "label": "Additional office space added",
        "terseLabel": "Additional office space added to the lease"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AdditionalPaidInCapital": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdditionalPaidInCapital",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Paid in Capital",
        "terseLabel": "Additional paid-in capital",
        "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock."
       }
      }
     },
     "auth_ref": [
      "r56",
      "r589",
      "r900"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdditionalPaidInCapitalMember",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Paid-In Capital",
        "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders."
       }
      }
     },
     "auth_ref": [
      "r481",
      "r710",
      "r711",
      "r712",
      "r713",
      "r848",
      "r901"
     ]
    },
    "ecd_AdjToCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AdjToCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment to Compensation Amount",
        "terseLabel": "Adjustment to Compensation, Amount"
       }
      }
     },
     "auth_ref": [
      "r657"
     ]
    },
    "ecd_AdjToCompAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AdjToCompAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment to Compensation [Axis]",
        "terseLabel": "Adjustment to Compensation:"
       }
      }
     },
     "auth_ref": [
      "r657"
     ]
    },
    "ecd_AdjToNonPeoNeoCompFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AdjToNonPeoNeoCompFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]",
        "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote"
       }
      }
     },
     "auth_ref": [
      "r657"
     ]
    },
    "ecd_AdjToPeoCompFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AdjToPeoCompFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment To PEO Compensation, Footnote [Text Block]",
        "terseLabel": "Adjustment To PEO Compensation, Footnote"
       }
      }
     },
     "auth_ref": [
      "r657"
     ]
    },
    "us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments, Noncash Items, to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Adjustments to reconcile net income (loss) to net cash provided by operating activities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to Additional Paid in Capital, Share-based Compensation, Stock Options, Requisite Service Period Recognition",
        "terseLabel": "Stock-based compensation",
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for option under share-based payment arrangement."
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_AfflovestPMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "AfflovestPMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represent information pertaining to AffloVest APA.",
        "label": "AffloVest APA",
        "terseLabel": "AffloVest APA"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AggtChngPnsnValInSummryCompstnTblForAplblYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AggtChngPnsnValInSummryCompstnTblForAplblYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table [Member]",
        "terseLabel": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table"
       }
      }
     },
     "auth_ref": [
      "r690"
     ]
    },
    "ecd_AggtErrCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AggtErrCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Erroneous Compensation Amount",
        "terseLabel": "Aggregate Erroneous Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r616",
      "r626",
      "r636",
      "r668"
     ]
    },
    "ecd_AggtErrCompNotYetDeterminedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AggtErrCompNotYetDeterminedTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]",
        "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined"
       }
      }
     },
     "auth_ref": [
      "r619",
      "r629",
      "r639",
      "r671"
     ]
    },
    "ecd_AggtPnsnAdjsSvcCstMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AggtPnsnAdjsSvcCstMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Pension Adjustments Service Cost [Member]",
        "terseLabel": "Aggregate Pension Adjustments Service Cost"
       }
      }
     },
     "auth_ref": [
      "r691"
     ]
    },
    "tcmd_AirwayClearanceProductsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "AirwayClearanceProductsMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to Airway clearance products.",
        "label": "Airway clearance products",
        "terseLabel": "Airway clearance products"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AllAdjToCompMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AllAdjToCompMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Adjustments to Compensation [Member]",
        "terseLabel": "All Adjustments to Compensation"
       }
      }
     },
     "auth_ref": [
      "r657"
     ]
    },
    "ecd_AllExecutiveCategoriesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AllExecutiveCategoriesMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Executive Categories [Member]",
        "terseLabel": "All Executive Categories"
       }
      }
     },
     "auth_ref": [
      "r664"
     ]
    },
    "ecd_AllIndividualsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AllIndividualsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure",
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure",
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Individuals [Member]",
        "terseLabel": "All Individuals"
       }
      }
     },
     "auth_ref": [
      "r620",
      "r630",
      "r640",
      "r664",
      "r672",
      "r676",
      "r684"
     ]
    },
    "ecd_AllTradingArrangementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AllTradingArrangementsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Trading Arrangements [Member]",
        "terseLabel": "All Trading Arrangements"
       }
      }
     },
     "auth_ref": [
      "r682"
     ]
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AllocatedShareBasedCompensationExpense",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Allocated Share-based Compensation Expense",
        "terseLabel": "Compensation expense",
        "verboseLabel": "Stock-based compensation expense",
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized."
       }
      }
     },
     "auth_ref": [
      "r333",
      "r335"
     ]
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amendment Flag",
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AmortizationOfIntangibleAssets",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization of Intangible Assets",
        "terseLabel": "Amortization expense",
        "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method."
       }
      }
     },
     "auth_ref": [
      "r4",
      "r201",
      "r208",
      "r556"
     ]
    },
    "tcmd_AmortizationOfIntangibleAssetsAndEarnOuts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "AmortizationOfIntangibleAssetsAndEarnOuts",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of impairment of intangible asset and earn outs.",
        "label": "Amortization of Intangible Assets and Earn outs",
        "terseLabel": "Intangible asset amortization and earn-out"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount",
        "terseLabel": "Antidilutive securities excluded from computation of earnings per share",
        "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."
       }
      }
     },
     "auth_ref": [
      "r173"
     ]
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Antidilutive Securities [Axis]",
        "documentation": "Information by type of antidilutive security."
       }
      }
     },
     "auth_ref": [
      "r18"
     ]
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]",
        "terseLabel": "Net Income (Loss) Per Share",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AntidilutiveSecuritiesNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AntidilutiveSecuritiesNameDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Antidilutive Securities, Name [Domain]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r18"
     ]
    },
    "us-gaap_AreaOfLand": {
     "xbrltype": "areaItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AreaOfLand",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Area of Land",
        "terseLabel": "Area of office space",
        "documentation": "Area of land held."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetImpairmentCharges": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetImpairmentCharges",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Asset Impairment Charges",
        "verboseLabel": "Impairment recognized",
        "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."
       }
      }
     },
     "auth_ref": [
      "r4",
      "r26"
     ]
    },
    "us-gaap_Assets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "Assets",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets",
        "totalLabel": "Total assets",
        "documentation": "Amount of asset recognized for present right to economic benefit."
       }
      }
     },
     "auth_ref": [
      "r95",
      "r107",
      "r126",
      "r148",
      "r177",
      "r181",
      "r187",
      "r188",
      "r193",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r366",
      "r370",
      "r400",
      "r442",
      "r505",
      "r552",
      "r553",
      "r589",
      "r607",
      "r753",
      "r754",
      "r858"
     ]
    },
    "us-gaap_AssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets [Abstract]",
        "terseLabel": "Assets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsAndLiabilitiesLesseeAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsAndLiabilitiesLesseeAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets and Liabilities, Lessee [Abstract]",
        "terseLabel": "Lease-related assets and liabilities"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_AssetsAndLiabilitiesLesseeTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "AssetsAndLiabilitiesLesseeTableTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The tabular disclosure of lease-related assets and liabilities.",
        "label": "Assets and Liabilities, Lessee [Table Text Block]",
        "terseLabel": "Summary of lease-related assets and liabilities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsCurrent",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Current",
        "totalLabel": "Total current assets",
        "documentation": "Amount of asset recognized for present right to economic benefit, classified as current."
       }
      }
     },
     "auth_ref": [
      "r120",
      "r133",
      "r148",
      "r193",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r366",
      "r370",
      "r400",
      "r589",
      "r753",
      "r754",
      "r858"
     ]
    },
    "us-gaap_AssetsCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsCurrentAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Current [Abstract]",
        "terseLabel": "Current assets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsNoncurrent",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Noncurrent",
        "totalLabel": "Total non-current assets",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold or consumed after one year or beyond the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r148",
      "r193",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r366",
      "r370",
      "r400",
      "r753",
      "r754",
      "r858"
     ]
    },
    "ecd_AwardExrcPrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardExrcPrice",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Exercise Price",
        "terseLabel": "Exercise Price"
       }
      }
     },
     "auth_ref": [
      "r679"
     ]
    },
    "ecd_AwardGrantDateFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardGrantDateFairValue",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Grant Date Fair Value",
        "terseLabel": "Fair Value as of Grant Date"
       }
      }
     },
     "auth_ref": [
      "r680"
     ]
    },
    "ecd_AwardTmgDiscLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgDiscLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Disclosures [Line Items]",
        "terseLabel": "Award Timing Disclosures"
       }
      }
     },
     "auth_ref": [
      "r675"
     ]
    },
    "ecd_AwardTmgHowMnpiCnsdrdTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgHowMnpiCnsdrdTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing, How MNPI Considered [Text Block]",
        "terseLabel": "Award Timing, How MNPI Considered"
       }
      }
     },
     "auth_ref": [
      "r675"
     ]
    },
    "ecd_AwardTmgMethodTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgMethodTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Method [Text Block]",
        "terseLabel": "Award Timing Method"
       }
      }
     },
     "auth_ref": [
      "r675"
     ]
    },
    "ecd_AwardTmgMnpiCnsdrdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgMnpiCnsdrdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing MNPI Considered [Flag]",
        "terseLabel": "Award Timing MNPI Considered"
       }
      }
     },
     "auth_ref": [
      "r675"
     ]
    },
    "ecd_AwardTmgMnpiDiscTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgMnpiDiscTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing MNPI Disclosure [Text Block]",
        "terseLabel": "Award Timing MNPI Disclosure"
       }
      }
     },
     "auth_ref": [
      "r675"
     ]
    },
    "ecd_AwardTmgPredtrmndFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgPredtrmndFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Predetermined [Flag]",
        "terseLabel": "Award Timing Predetermined"
       }
      }
     },
     "auth_ref": [
      "r675"
     ]
    },
    "us-gaap_AwardTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AwardTypeAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityTables",
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Type [Axis]",
        "terseLabel": "Award Type",
        "documentation": "Information by type of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332"
     ]
    },
    "ecd_AwardUndrlygSecuritiesAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardUndrlygSecuritiesAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Underlying Securities Amount",
        "terseLabel": "Underlying Securities"
       }
      }
     },
     "auth_ref": [
      "r678"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardsCloseToMnpiDiscIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Awards Close in Time to MNPI Disclosures, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r677"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardsCloseToMnpiDiscTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Awards Close in Time to MNPI Disclosures [Table]",
        "terseLabel": "Awards Close in Time to MNPI Disclosures"
       }
      }
     },
     "auth_ref": [
      "r676"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardsCloseToMnpiDiscTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]",
        "terseLabel": "Awards Close in Time to MNPI Disclosures, Table"
       }
      }
     },
     "auth_ref": [
      "r676"
     ]
    },
    "us-gaap_BaseRateMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BaseRateMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Base Rate",
        "documentation": "Minimum rate investor will accept."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BasisOfAccountingPolicyPolicyTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basis of Accounting, Policy [Policy Text Block]",
        "terseLabel": "Basis of Presentation",
        "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureBasisOfPresentation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basis of Presentation and Significant Accounting Policies [Text Block]",
        "verboseLabel": "Basis of Presentation",
        "documentation": "The entire disclosure for the basis of presentation and significant accounting policies concepts. 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). Accounting policies describe all significant accounting policies of the reporting entity."
       }
      }
     },
     "auth_ref": [
      "r78"
     ]
    },
    "us-gaap_BuildingMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BuildingMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Building",
        "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities."
       }
      }
     },
     "auth_ref": [
      "r81"
     ]
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessAcquisitionAcquireeDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Acquisition, Acquiree [Domain]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r202",
      "r203",
      "r204",
      "r205",
      "r206",
      "r360",
      "r571",
      "r572"
     ]
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessAcquisitionAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Acquisition [Axis]",
        "documentation": "Information by business combination or series of individually immaterial business combinations."
       }
      }
     },
     "auth_ref": [
      "r35",
      "r36",
      "r202",
      "r203",
      "r204",
      "r205",
      "r206",
      "r360",
      "r571",
      "r572"
     ]
    },
    "us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsEarnOutLiabilityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability",
        "terseLabel": "Fair value adjustments",
        "documentation": "Amount of increase (decrease) in the value of a contingent consideration liability, including, but not limited to, differences arising upon settlement."
       }
      }
     },
     "auth_ref": [
      "r362",
      "r703"
     ]
    },
    "us-gaap_BusinessCombinationContingentConsiderationLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessCombinationContingentConsiderationLiability",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsEarnOutLiabilityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Contingent Consideration, Liability",
        "periodEndLabel": "Earn-out liability, ending balance",
        "periodStartLabel": "Earn-out liability, beginning balance",
        "documentation": "Amount of liability recognized arising from contingent consideration in a business combination."
       }
      }
     },
     "auth_ref": [
      "r39",
      "r93",
      "r361",
      "r384",
      "r385",
      "r386"
     ]
    },
    "tcmd_BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsFairValueHierarchyDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow for imputed interest payment on business combination contingent consideration liability.",
        "label": "Business Combination Contingent Consideration Liability imputed interest payment",
        "terseLabel": "Imputed interest payment"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and Cash Equivalents, at Carrying Value",
        "terseLabel": "Cash and cash equivalents",
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r122",
      "r546"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents",
        "periodEndLabel": "Cash and cash equivalents - end of period",
        "periodStartLabel": "Cash and cash equivalents - beginning of period",
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for 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."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r74",
      "r145"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect",
        "totalLabel": "Net increase in cash and cash equivalents",
        "documentation": "Amount of increase (decrease) in cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; excluding effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r0",
      "r74"
     ]
    },
    "ecd_ChangedPeerGroupFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ChangedPeerGroupFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changed Peer Group, Footnote [Text Block]",
        "terseLabel": "Changed Peer Group, Footnote"
       }
      }
     },
     "auth_ref": [
      "r655"
     ]
    },
    "ecd_ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year [Member]",
        "terseLabel": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year"
       }
      }
     },
     "auth_ref": [
      "r652"
     ]
    },
    "ecd_ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested [Member]",
        "terseLabel": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested"
       }
      }
     },
     "auth_ref": [
      "r650"
     ]
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CityAreaCode",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ClassOfStockLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ClassOfStockLineItems",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Class of Stock [Line Items]",
        "verboseLabel": "Stockholders' Equity",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r129",
      "r130",
      "r131",
      "r180",
      "r269",
      "r270",
      "r271",
      "r272",
      "r273",
      "r274",
      "r275",
      "r474",
      "r475",
      "r476",
      "r477",
      "r560",
      "r694",
      "r706"
     ]
    },
    "ecd_CoSelectedMeasureAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CoSelectedMeasureAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Company Selected Measure Amount",
        "terseLabel": "Company Selected Measure Amount"
       }
      }
     },
     "auth_ref": [
      "r656"
     ]
    },
    "ecd_CoSelectedMeasureName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CoSelectedMeasureName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Company Selected Measure Name",
        "terseLabel": "Company Selected Measure Name"
       }
      }
     },
     "auth_ref": [
      "r656"
     ]
    },
    "us-gaap_CommitmentsAndContingencies": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingencies",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitment and Contingencies",
        "verboseLabel": "Commitments and Contingencies (see Note 9)",
        "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."
       }
      }
     },
     "auth_ref": [
      "r52",
      "r99",
      "r443",
      "r492"
     ]
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingencies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "terseLabel": "Commitments and Contingencies",
        "documentation": "The entire disclosure for commitments and contingencies."
       }
      }
     },
     "auth_ref": [
      "r82",
      "r223",
      "r224",
      "r541",
      "r739",
      "r741"
     ]
    },
    "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockCapitalSharesReservedForFutureIssuance",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Capital Shares Reserved for Future Issuance",
        "terseLabel": "Shares reserved",
        "verboseLabel": "Shares available for future issuance",
        "documentation": "Aggregate number of common shares reserved for future issuance."
       }
      }
     },
     "auth_ref": [
      "r55"
     ]
    },
    "us-gaap_CommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockMember",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock",
        "documentation": "Stock that is subordinate to all other stock of the issuer."
       }
      }
     },
     "auth_ref": [
      "r597",
      "r598",
      "r599",
      "r601",
      "r602",
      "r603",
      "r604",
      "r710",
      "r711",
      "r713",
      "r848",
      "r899",
      "r901"
     ]
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockParOrStatedValuePerShare",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Par or Stated Value Per Share",
        "terseLabel": "Common stock, par value (in dollars per share)",
        "documentation": "Face amount or stated value per share of common stock."
       }
      }
     },
     "auth_ref": [
      "r55"
     ]
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesAuthorized",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Shares Authorized",
        "terseLabel": "Common stock, shares authorized",
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r55",
      "r493"
     ]
    },
    "us-gaap_CommonStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesIssued",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Shares, Issued",
        "terseLabel": "Common stock, shares, issued",
        "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury."
       }
      }
     },
     "auth_ref": [
      "r55"
     ]
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesOutstanding",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Shares, Outstanding",
        "terseLabel": "Common stock, shares, outstanding",
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r55",
      "r493",
      "r511",
      "r901",
      "r902"
     ]
    },
    "us-gaap_CommonStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockValue",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Value, Issued",
        "terseLabel": "Common stock, $0.001 par value, 300,000,000 shares authorized; 23,966,748 shares issued and outstanding as of June 30, 2024; 23,600,584 shares issued and outstanding as of December 31, 2023",
        "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."
       }
      }
     },
     "auth_ref": [
      "r55",
      "r445",
      "r589"
     ]
    },
    "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]",
        "terseLabel": "Compensation Actually Paid vs. Company Selected Measure"
       }
      }
     },
     "auth_ref": [
      "r661"
     ]
    },
    "ecd_CompActuallyPaidVsNetIncomeTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CompActuallyPaidVsNetIncomeTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Net Income [Text Block]",
        "terseLabel": "Compensation Actually Paid vs. Net Income"
       }
      }
     },
     "auth_ref": [
      "r660"
     ]
    },
    "ecd_CompActuallyPaidVsOtherMeasureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CompActuallyPaidVsOtherMeasureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Other Measure [Text Block]",
        "terseLabel": "Compensation Actually Paid vs. Other Measure"
       }
      }
     },
     "auth_ref": [
      "r662"
     ]
    },
    "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]",
        "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return"
       }
      }
     },
     "auth_ref": [
      "r659"
     ]
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskBenchmarkDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Benchmark [Domain]",
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage."
       }
      }
     },
     "auth_ref": [
      "r20",
      "r21",
      "r41",
      "r42",
      "r191",
      "r540"
     ]
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Benchmark [Axis]",
        "documentation": "Information by benchmark of concentration risk."
       }
      }
     },
     "auth_ref": [
      "r20",
      "r21",
      "r41",
      "r42",
      "r191",
      "r472",
      "r540"
     ]
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskByTypeAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Type [Axis]",
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender."
       }
      }
     },
     "auth_ref": [
      "r20",
      "r21",
      "r41",
      "r42",
      "r191",
      "r540",
      "r697"
     ]
    },
    "us-gaap_ConcentrationRiskLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskLineItems",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk [Line Items]",
        "verboseLabel": "Commitments and Contingencies",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r540"
     ]
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskPercentage1",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk, Percentage",
        "terseLabel": "Total purchases (in percentage)",
        "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."
       }
      }
     },
     "auth_ref": [
      "r20",
      "r21",
      "r41",
      "r42",
      "r191"
     ]
    },
    "us-gaap_ConcentrationRiskTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskTable",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk [Table]",
        "documentation": "Disclosure of information about concentration risk. Includes, but is not limited to, percentage of concentration risk and benchmark serving as denominator in calculation of percentage of concentration risk."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r20",
      "r21",
      "r22",
      "r41",
      "r94",
      "r540"
     ]
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskTypeDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Type [Domain]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r20",
      "r21",
      "r41",
      "r42",
      "r191",
      "r540"
     ]
    },
    "us-gaap_ConsolidationPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConsolidationPolicyTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidation, Policy [Policy Text Block]",
        "terseLabel": "Principles of Consolidation",
        "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary."
       }
      }
     },
     "auth_ref": [
      "r40",
      "r548"
     ]
    },
    "tcmd_CorporateHeadQuarterInitialLeaseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "CorporateHeadQuarterInitialLeaseMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents member for initial lease for corporate head quarter.",
        "label": "Initial lease"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_CorporateHeadQuarterSecondLeaseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "CorporateHeadQuarterSecondLeaseMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents member for second lease corporate head quarter.",
        "label": "Second lease"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_CorporateHeadQuarterThirdLeaseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "CorporateHeadQuarterThirdLeaseMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents member for third lease corporate head quarter.",
        "label": "Third lease"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CostOfGoodsSoldSalesTypeLease": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CostOfGoodsSoldSalesTypeLease",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of Goods Sold, Sales-type Lease",
        "terseLabel": "Cost of sales-type lease revenue",
        "documentation": "Cost of goods sold for sales-type financing lease."
       }
      }
     },
     "auth_ref": [
      "r178",
      "r426"
     ]
    },
    "us-gaap_CostOfGoodsTotalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CostOfGoodsTotalMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Purchases",
        "documentation": "Cost of product sold and service rendered, when it serves as benchmark in concentration of risk calculation."
       }
      }
     },
     "auth_ref": [
      "r696"
     ]
    },
    "us-gaap_CostOfRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CostOfRevenue",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of Revenue",
        "terseLabel": "Total cost of revenue",
        "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r67",
      "r148",
      "r193",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r400",
      "r552",
      "r753"
     ]
    },
    "us-gaap_CostOfSalesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CostOfSalesMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of revenue.",
        "terseLabel": "Cost of revenue.",
        "documentation": "Primary financial statement caption encompassing cost of sales."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Document and Entity Information",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_CreditAgreementTotalAggregatePrincipalAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "CreditAgreementTotalAggregatePrincipalAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The total aggregate principal amount under the credit agreement.",
        "label": "Credit Agreement, Total Aggregate Principal Amount",
        "terseLabel": "Credit agreement, total aggregate principal amount"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CreditFacilityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CreditFacilityAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails",
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Credit Facility [Axis]",
        "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing."
       }
      }
     },
     "auth_ref": [
      "r242",
      "r751"
     ]
    },
    "us-gaap_CreditFacilityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CreditFacilityDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails",
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Credit Facility [Domain]",
        "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing."
       }
      }
     },
     "auth_ref": [
      "r242",
      "r751",
      "r752"
     ]
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Fiscal Year End Date",
        "documentation": "End date of current fiscal year in the format --MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CustomerContractsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CustomerContractsMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer accounts",
        "terseLabel": "Customer accounts",
        "documentation": "Entity's established relationships with its customers through contracts."
       }
      }
     },
     "auth_ref": [
      "r38",
      "r727",
      "r728",
      "r729",
      "r730",
      "r732",
      "r734",
      "r737",
      "r738"
     ]
    },
    "us-gaap_CustomerRelationshipsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CustomerRelationshipsMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer relationships",
        "terseLabel": "Customer relationships",
        "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships."
       }
      }
     },
     "auth_ref": [
      "r38",
      "r727",
      "r728",
      "r729",
      "r730",
      "r732",
      "r734",
      "r737",
      "r738"
     ]
    },
    "tcmd_DanielL.ReuversMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "DanielL.ReuversMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the member information pertaining to Daniel L. Reuvers.",
        "label": "Daniel L. Reuvers [Member]",
        "terseLabel": "Daniel L. Reuvers"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Credit Agreement"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtDisclosureTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Disclosure [Text Block]",
        "verboseLabel": "Credit Agreement",
        "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants."
       }
      }
     },
     "auth_ref": [
      "r83",
      "r147",
      "r216",
      "r217",
      "r218",
      "r219",
      "r220",
      "r241",
      "r242",
      "r252",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r262",
      "r264",
      "r265",
      "r266",
      "r407"
     ]
    },
    "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentBasisSpreadOnVariableRate1",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Basis Spread on Variable Rate",
        "verboseLabel": "Basis spread (as a percent)",
        "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentCarryingAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentCarryingAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt, Gross",
        "totalLabel": "Total",
        "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r98",
      "r267"
     ]
    },
    "us-gaap_DebtInstrumentFaceAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentFaceAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Face Amount",
        "terseLabel": "Debt instrument face amount",
        "documentation": "Face (par) amount of debt instrument at time of issuance."
       }
      }
     },
     "auth_ref": [
      "r253",
      "r407",
      "r408",
      "r558",
      "r559",
      "r587"
     ]
    },
    "us-gaap_DebtInstrumentFrequencyOfPeriodicPayment": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentFrequencyOfPeriodicPayment",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Frequency of Periodic Payment",
        "terseLabel": "Debt instrument frequency of periodic payment",
        "documentation": "Description of the frequency of periodic payments (monthly, quarterly, annual)."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r43"
     ]
    },
    "tcmd_DebtInstrumentPaymentOfMandatoryPrincipalPrepayment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "DebtInstrumentPaymentOfMandatoryPrincipalPrepayment",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of mandatory principal prepayment paid",
        "label": "Debt Instrument, Payment of Mandatory Principal Prepayment",
        "terseLabel": "Principal prepayment of term loan"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentPeriodicPayment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentPeriodicPayment",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Periodic Payment",
        "terseLabel": "Debt instrument periodic payment",
        "documentation": "Amount of the required periodic payments including both interest and principal payments."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r43"
     ]
    },
    "tcmd_DefensiveIntangibleAssetsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "DefensiveIntangibleAssetsMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This member stands for defensive intangible assets.",
        "label": "Defensive intangible assets",
        "terseLabel": "Defensive intangible assets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredFinanceCostsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredFinanceCostsNet",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Issuance Costs, Net",
        "negatedLabel": "Less: Deferred financing fees",
        "documentation": "Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs."
       }
      }
     },
     "auth_ref": [
      "r756",
      "r853",
      "r854",
      "r855"
     ]
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredIncomeTaxAssetsNet",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Tax Assets, Net, Noncurrent",
        "terseLabel": "Deferred income taxes",
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting."
       }
      }
     },
     "auth_ref": [
      "r339",
      "r340"
     ]
    },
    "us-gaap_DeferredIncomeTaxesAndTaxCredits": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredIncomeTaxesAndTaxCredits",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Income Taxes and Tax Credits",
        "terseLabel": "Deferred income taxes",
        "documentation": "Amount of deferred income tax expense (benefit) and income tax credits."
       }
      }
     },
     "auth_ref": [
      "r77"
     ]
    },
    "tcmd_DefinedContribution401kRetirementPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "DefinedContribution401kRetirementPlanMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesRetirementPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represent information pertaining to Defined Contribution 401K Retirement Plan",
        "label": "401(k)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DefinedContributionPlanDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DefinedContributionPlanDisclosureLineItems",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesRetirementPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Defined Contribution Plan Disclosure [Line Items]",
        "verboseLabel": "Retirement Plan",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r295"
     ]
    },
    "us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DefinedContributionPlanEmployerDiscretionaryContributionAmount",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesRetirementPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Defined Contribution Plan, Employer Discretionary Contribution Amount",
        "terseLabel": "Discretionary contributions",
        "documentation": "Amount of discretionary contributions made by an employer to a defined contribution plan."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DefinedContributionPlanTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DefinedContributionPlanTable",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesRetirementPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Defined Contribution Plan [Table]",
        "documentation": "Disclosure of information about defined contribution pension plans or defined contribution other postretirement plans, separately for pension plans and other postretirement benefit plans."
       }
      }
     },
     "auth_ref": [
      "r295"
     ]
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DepreciationDepletionAndAmortization",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Depreciation, Depletion and Amortization",
        "terseLabel": "Depreciation and amortization",
        "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."
       }
      }
     },
     "auth_ref": [
      "r4",
      "r177",
      "r184",
      "r188",
      "r552",
      "r553"
     ]
    },
    "us-gaap_DevelopedTechnologyRightsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DevelopedTechnologyRightsMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Developed technology",
        "terseLabel": "Developed technology",
        "documentation": "Rights to developed technology, which can include the right to develop, use, market, sell, or offer for sale products, compounds, or intellectual property."
       }
      }
     },
     "auth_ref": [
      "r92",
      "r727",
      "r728",
      "r729",
      "r730",
      "r732",
      "r734",
      "r737",
      "r738"
     ]
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisaggregationOfRevenueLineItems",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue [Line Items]",
        "terseLabel": "Revenue",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r286",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisaggregationOfRevenueTable",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue [Table]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r286",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue [Table Text Block]",
        "terseLabel": "Summary of revenue disaggregated by product",
        "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor."
       }
      }
     },
     "auth_ref": [
      "r757"
     ]
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Period Focus",
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentFiscalYearFocus": {
     "xbrltype": "gYearItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentFiscalYearFocus",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Year Focus",
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentPeriodEndDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Period End Date",
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentQuarterlyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentQuarterlyReport",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Quarterly Report",
        "documentation": "Boolean flag that is true only for a form used as an quarterly report."
       }
      }
     },
     "auth_ref": [
      "r611"
     ]
    },
    "dei_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Transition Report",
        "documentation": "Boolean flag that is true only for a form used as a transition report."
       }
      }
     },
     "auth_ref": [
      "r643"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentType",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Type",
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'."
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_DurableMedicalEquipmentDistributorsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "DurableMedicalEquipmentDistributorsMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to Durable medical equipment distributors.",
        "label": "Durable medical equipment distributors",
        "terseLabel": "Durable medical equipment distributors"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year [Member]",
        "terseLabel": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year"
       }
      }
     },
     "auth_ref": [
      "r654"
     ]
    },
    "us-gaap_EarningsPerShareAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Income (Loss) Per Share",
        "terseLabel": "Net income (loss) per common share"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareBasic": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareBasic",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareBasicAndDilutedNetIncomeLossPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share, Basic",
        "terseLabel": "Net income (loss) per share - Basic",
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r139",
      "r156",
      "r157",
      "r158",
      "r159",
      "r160",
      "r161",
      "r166",
      "r168",
      "r170",
      "r171",
      "r172",
      "r176",
      "r358",
      "r364",
      "r379",
      "r380",
      "r439",
      "r453",
      "r549"
     ]
    },
    "us-gaap_EarningsPerShareDiluted": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareDiluted",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareBasicAndDilutedNetIncomeLossPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share, Diluted",
        "terseLabel": "Net income (loss) per share - Diluted",
        "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."
       }
      }
     },
     "auth_ref": [
      "r139",
      "r156",
      "r157",
      "r158",
      "r159",
      "r160",
      "r161",
      "r168",
      "r170",
      "r171",
      "r172",
      "r176",
      "r358",
      "r364",
      "r379",
      "r380",
      "r439",
      "r453",
      "r549"
     ]
    },
    "tcmd_EarningsPerShareOtherDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "EarningsPerShareOtherDisclosureAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "n/a",
        "label": "Earnings Per Share Other Disclosure [Abstract]",
        "verboseLabel": "Weighted-average common shares used to compute net income (loss) per common share"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShare"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share [Text Block]",
        "verboseLabel": "Net Income (Loss) Per Share",
        "documentation": "The entire disclosure for earnings per share."
       }
      }
     },
     "auth_ref": [
      "r165",
      "r173",
      "r174",
      "r175"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective Income Tax Rate Reconciliation, Percent",
        "terseLabel": "Net effective rate",
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r342",
      "r577"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureIncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective Income Tax Rate Reconciliation, Percent [Abstract]",
        "terseLabel": "Effective Income Tax Rate Reconciliation, Percent"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_ElaineM.BirkemeyerMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "ElaineM.BirkemeyerMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the member information pertaining to Elaine M. Birkemeyer.",
        "label": "Elaine M. Birkemeyer [Member]",
        "terseLabel": "Elaine M. Birkemeyer"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee-related Liabilities, Current",
        "terseLabel": "Accrued payroll and related taxes",
        "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r47"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition",
        "verboseLabel": "Weighted-average period over which unrecognized compensation cost is expected to be recognized",
        "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."
       }
      }
     },
     "auth_ref": [
      "r334"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Share-based Awards Other than Options",
        "terseLabel": "Total unrecognized pre-tax compensation expense related to awards",
        "documentation": "Amount of cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options."
       }
      }
     },
     "auth_ref": [
      "r844"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Stock Options",
        "terseLabel": "Total unrecognized pre-tax compensation expense related to nonvested stock option awards",
        "documentation": "Amount of cost to be recognized for option under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r844"
     ]
    },
    "us-gaap_EmployeeStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeStockMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Stock Purchase Plan",
        "documentation": "An Employee Stock Purchase Plan is a tax-efficient means by which employees of a corporation can purchase the corporation's stock."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EmployeeStockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeStockOptionMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails",
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Common stock options",
        "label": "Employee Stock Option [Member]",
        "terseLabel": "Employee Stock Option",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_EmployeeStockPurchasePlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "EmployeeStockPurchasePlanMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the information pertaining to Employee stock purchase plan shares.",
        "label": "Employee stock purchase plan [Member]",
        "terseLabel": "Employee stock purchase plan"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_EmployeeStockPurchasePlanOfferingPeriodsPeriod": {
     "xbrltype": "durationItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "EmployeeStockPurchasePlanOfferingPeriodsPeriod",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period which an employee's right to purchase shares of stock at a discount, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Employee Stock Purchase Plan, Offering Periods, Period",
        "terseLabel": "Offering period (in months)"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line One",
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, City or Town",
        "documentation": "Name of the City or Town"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressPostalZipCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Postal Zip Code",
        "documentation": "Code for the postal or zip code"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressStateOrProvince": {
     "xbrltype": "stateOrProvinceItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, State or Province",
        "documentation": "Name of the state or province."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Central Index Key",
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK."
       }
      }
     },
     "auth_ref": [
      "r609"
     ]
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Common Stock, Shares Outstanding",
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCurrentReportingStatus": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityCurrentReportingStatus",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Current Reporting Status",
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityEmergingGrowthCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r609"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity File Number",
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityFilerCategory": {
     "xbrltype": "filerCategoryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityFilerCategory",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Filer Category",
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure."
       }
      }
     },
     "auth_ref": [
      "r609"
     ]
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Incorporation, State or Country Code",
        "documentation": "Two-character EDGAR code representing the state or country of incorporation."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityInteractiveDataCurrent": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityInteractiveDataCurrent",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Interactive Data Current",
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)."
       }
      }
     },
     "auth_ref": [
      "r693"
     ]
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Registrant Name",
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC."
       }
      }
     },
     "auth_ref": [
      "r609"
     ]
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Shell Company",
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r609"
     ]
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Small Business",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r609"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Tax Identification Number",
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS."
       }
      }
     },
     "auth_ref": [
      "r609"
     ]
    },
    "ecd_EqtyAwrdsAdjFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "EqtyAwrdsAdjFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Awards Adjustments, Footnote [Text Block]",
        "terseLabel": "Equity Awards Adjustments, Footnote"
       }
      }
     },
     "auth_ref": [
      "r648"
     ]
    },
    "ecd_EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Awards Adjustments, Excluding Value Reported in the Compensation Table [Member]",
        "terseLabel": "Equity Awards Adjustments, Excluding Value Reported in Compensation Table"
       }
      }
     },
     "auth_ref": [
      "r689"
     ]
    },
    "ecd_EqtyAwrdsAdjsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "EqtyAwrdsAdjsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Awards Adjustments [Member]",
        "terseLabel": "Equity Awards Adjustments"
       }
      }
     },
     "auth_ref": [
      "r689"
     ]
    },
    "ecd_EqtyAwrdsInSummryCompstnTblForAplblYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "EqtyAwrdsInSummryCompstnTblForAplblYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table [Member]",
        "terseLabel": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table"
       }
      }
     },
     "auth_ref": [
      "r689"
     ]
    },
    "us-gaap_EquipmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EquipmentMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equipment",
        "documentation": "Tangible personal property used to produce goods and services."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EquityComponentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EquityComponentDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Component [Domain]",
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r118",
      "r136",
      "r137",
      "r138",
      "r151",
      "r152",
      "r153",
      "r155",
      "r160",
      "r162",
      "r164",
      "r179",
      "r194",
      "r195",
      "r214",
      "r276",
      "r348",
      "r349",
      "r355",
      "r356",
      "r357",
      "r359",
      "r363",
      "r364",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r406",
      "r409",
      "r410",
      "r427",
      "r452",
      "r466",
      "r467",
      "r468",
      "r481",
      "r531"
     ]
    },
    "tcmd_EquityIncentivePlan2016Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "EquityIncentivePlan2016Member",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to the 2016 Equity Incentive Plan (the \"2016 Plan\").",
        "label": "2016 Plan"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_EquityValuationAssumptionDifferenceFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "EquityValuationAssumptionDifferenceFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Valuation Assumption Difference, Footnote [Text Block]",
        "terseLabel": "Equity Valuation Assumption Difference, Footnote"
       }
      }
     },
     "auth_ref": [
      "r658"
     ]
    },
    "ecd_ErrCompAnalysisTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ErrCompAnalysisTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Erroneous Compensation Analysis [Text Block]",
        "terseLabel": "Erroneous Compensation Analysis"
       }
      }
     },
     "auth_ref": [
      "r616",
      "r626",
      "r636",
      "r668"
     ]
    },
    "ecd_ErrCompRecoveryTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ErrCompRecoveryTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Erroneously Awarded Compensation Recovery [Table]",
        "terseLabel": "Erroneously Awarded Compensation Recovery"
       }
      }
     },
     "auth_ref": [
      "r613",
      "r623",
      "r633",
      "r665"
     ]
    },
    "ecd_ExecutiveCategoryAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ExecutiveCategoryAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Executive Category [Axis]",
        "terseLabel": "Executive Category:"
       }
      }
     },
     "auth_ref": [
      "r664"
     ]
    },
    "tcmd_ExpenseRelatingToInitialPublicOffering": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "ExpenseRelatingToInitialPublicOffering",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expenses relating to the initial public offering during the period.",
        "label": "Expense Relating To Initial Public Offering",
        "terseLabel": "Expense Relating To Initial Public Offering"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsEarnOutLiabilityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]",
        "terseLabel": "Fair Value Measurements",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r382",
      "r383",
      "r393",
      "r580"
     ]
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsEarnOutLiabilityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Measurements, Recurring and Nonrecurring [Table]",
        "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis."
       }
      }
     },
     "auth_ref": [
      "r382",
      "r383",
      "r393",
      "r580"
     ]
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueByFairValueHierarchyLevelAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsEarnOutLiabilityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value, Hierarchy [Axis]",
        "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient."
       }
      }
     },
     "auth_ref": [
      "r261",
      "r289",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r381",
      "r383",
      "r384",
      "r385",
      "r386",
      "r392",
      "r393",
      "r395",
      "r428",
      "r429",
      "r430",
      "r558",
      "r559",
      "r568",
      "r569",
      "r570",
      "r580",
      "r583"
     ]
    },
    "us-gaap_FairValueDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueDisclosuresAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Measurements"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueDisclosuresTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueDisclosuresTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureFairValueMeasurements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Disclosures [Text Block]",
        "terseLabel": "Fair Value Measurements",
        "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."
       }
      }
     },
     "auth_ref": [
      "r388",
      "r390",
      "r391",
      "r392",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r437",
      "r580",
      "r584"
     ]
    },
    "us-gaap_FairValueInputsLevel3Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueInputsLevel3Member",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsEarnOutLiabilityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Significant Unobservable Inputs (Level 3)",
        "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing."
       }
      }
     },
     "auth_ref": [
      "r261",
      "r289",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r383",
      "r384",
      "r385",
      "r386",
      "r393",
      "r430",
      "r558",
      "r559",
      "r568",
      "r569",
      "r570",
      "r580",
      "r583"
     ]
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueMeasurementsFairValueHierarchyDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsEarnOutLiabilityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Hierarchy [Domain]",
        "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value."
       }
      }
     },
     "auth_ref": [
      "r261",
      "r289",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r381",
      "r383",
      "r384",
      "r385",
      "r386",
      "r392",
      "r393",
      "r395",
      "r428",
      "r429",
      "r430",
      "r558",
      "r559",
      "r568",
      "r569",
      "r570",
      "r580",
      "r583"
     ]
    },
    "us-gaap_FederalFundsEffectiveSwapRateMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FederalFundsEffectiveSwapRateMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Federal Funds",
        "documentation": "Fixed rate on U.S. dollar, constant-notional interest rate swap having its variable-rate leg referenced to Federal Funds effective rate with no additional spread over Federal Funds effective rate on that variable-rate leg."
       }
      }
     },
     "auth_ref": [
      "r847"
     ]
    },
    "tcmd_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after 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": "Finite-Lived Intangible Asset, Expected Amortization, after Year Four",
        "terseLabel": "Thereafter"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Accumulated Amortization",
        "terseLabel": "Accumulated Amortization",
        "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life."
       }
      }
     },
     "auth_ref": [
      "r124",
      "r198",
      "r207",
      "r556"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months",
        "terseLabel": "2025",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r209",
      "r544",
      "r556"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Remainder of Fiscal Year",
        "terseLabel": "2024 (July 1 - December 31)",
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in remainder of current fiscal year."
       }
      }
     },
     "auth_ref": [
      "r903"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Four",
        "terseLabel": "2028",
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized 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)."
       }
      }
     },
     "auth_ref": [
      "r209",
      "r544",
      "r556"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Three",
        "terseLabel": "2027",
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized 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)."
       }
      }
     },
     "auth_ref": [
      "r209",
      "r544",
      "r556"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Two",
        "terseLabel": "2026",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r209",
      "r544",
      "r556"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]",
        "documentation": "Information by major type or class of finite-lived intangible assets."
       }
      }
     },
     "auth_ref": [
      "r200",
      "r202",
      "r203",
      "r204",
      "r206",
      "r207",
      "r211",
      "r212",
      "r435",
      "r436",
      "r544"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]",
        "terseLabel": "Future Amortization"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsGross",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Gross",
        "terseLabel": "Gross Carrying Amount",
        "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life."
       }
      }
     },
     "auth_ref": [
      "r198",
      "r207",
      "r436",
      "r556"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsLineItems",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets [Line Items]",
        "verboseLabel": "Goodwill and Intangible Assets",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r200",
      "r207",
      "r211",
      "r212",
      "r213",
      "r435",
      "r544",
      "r556"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r200",
      "r202",
      "r203",
      "r204",
      "r206",
      "r207",
      "r211",
      "r212",
      "r544"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsNet",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Net",
        "totalLabel": "Total",
        "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life."
       }
      }
     },
     "auth_ref": [
      "r435",
      "r734"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsNetAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsNetAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Net [Abstract]",
        "terseLabel": "Definite-lived intangible assets:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Remaining Amortization Period",
        "verboseLabel": "Weighted Average Amortization Period",
        "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."
       }
      }
     },
     "auth_ref": [
      "r435"
     ]
    },
    "tcmd_FollowOnPublicOfferingMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "FollowOnPublicOfferingMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the information pertaining to follow on public offering.",
        "label": "Follow On Public Offering [Member]",
        "terseLabel": "Follow-On Public Offering"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount",
        "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount"
       }
      }
     },
     "auth_ref": [
      "r620",
      "r630",
      "r640",
      "r672"
     ]
    },
    "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery due to Expense of Enforcement, Amount",
        "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount"
       }
      }
     },
     "auth_ref": [
      "r620",
      "r630",
      "r640",
      "r672"
     ]
    },
    "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ForgoneRecoveryDueToViolationOfHomeCountryLawAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery due to Violation of Home Country Law, Amount",
        "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount"
       }
      }
     },
     "auth_ref": [
      "r620",
      "r630",
      "r640",
      "r672"
     ]
    },
    "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery, Explanation of Impracticability [Text Block]",
        "terseLabel": "Forgone Recovery, Explanation of Impracticability"
       }
      }
     },
     "auth_ref": [
      "r620",
      "r630",
      "r640",
      "r672"
     ]
    },
    "ecd_ForgoneRecoveryIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ForgoneRecoveryIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r620",
      "r630",
      "r640",
      "r672"
     ]
    },
    "ecd_FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year [Member]",
        "terseLabel": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year"
       }
      }
     },
     "auth_ref": [
      "r653"
     ]
    },
    "us-gaap_GainLossOnDispositionOfAssets1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GainLossOnDispositionOfAssets1",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Gain (Loss) on Disposition of Assets",
        "negatedLabel": "Loss on disposal of property and equipment and intangibles",
        "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."
       }
      }
     },
     "auth_ref": [
      "r704"
     ]
    },
    "us-gaap_GeneralAndAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GeneralAndAdministrativeExpense",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "General and Administrative Expense",
        "terseLabel": "Reimbursement, general and administrative",
        "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."
       }
      }
     },
     "auth_ref": [
      "r69",
      "r515"
     ]
    },
    "us-gaap_GeneralAndAdministrativeExpenseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GeneralAndAdministrativeExpenseMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reimbursement, general and administrative expenses",
        "terseLabel": "Reimbursement, general and administrative expenses",
        "documentation": "Primary financial statement caption encompassing general and administrative expense."
       }
      }
     },
     "auth_ref": [
      "r69"
     ]
    },
    "us-gaap_Goodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "Goodwill",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill",
        "terseLabel": "Goodwill",
        "documentation": "Amount, after accumulated impairment loss, of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized."
       }
      }
     },
     "auth_ref": [
      "r123",
      "r199",
      "r438",
      "r553",
      "r555",
      "r581",
      "r589",
      "r724",
      "r725"
     ]
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill and Intangible Assets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill and Intangible Assets Disclosure [Text Block]",
        "terseLabel": "Goodwill and Intangible Assets",
        "documentation": "The entire disclosure for goodwill and intangible assets."
       }
      }
     },
     "auth_ref": [
      "r723",
      "r726"
     ]
    },
    "us-gaap_GrossProfit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GrossProfit",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Gross Profit",
        "totalLabel": "Gross profit",
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity."
       }
      }
     },
     "auth_ref": [
      "r64",
      "r67",
      "r106",
      "r148",
      "r193",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r400",
      "r551",
      "r552",
      "r715",
      "r716",
      "r717",
      "r718",
      "r719",
      "r753"
     ]
    },
    "us-gaap_IPOMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IPOMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "IPO",
        "documentation": "First sale of stock by a private company to the public."
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_InTransitInventoryAccruedExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "InTransitInventoryAccruedExpense",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureAccruedExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "In-transit inventory accrued expense.",
        "label": "In-transit inventory accrued expense",
        "terseLabel": "In-transit inventory"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "totalLabel": "Income (loss) before income taxes",
        "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."
       }
      }
     },
     "auth_ref": [
      "r65",
      "r101",
      "r106",
      "r440",
      "r449",
      "r551",
      "r552",
      "r715",
      "r716",
      "r717",
      "r718",
      "r719"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerBasicShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeLossFromContinuingOperationsPerBasicShare",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income (Loss) from Continuing Operations, Per Basic Share",
        "terseLabel": "Basic",
        "documentation": "The amount of net income (loss) from continuing operations per each share of common stock or unit outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r66",
      "r102",
      "r139",
      "r154",
      "r156",
      "r157",
      "r158",
      "r159",
      "r160",
      "r168",
      "r170",
      "r171",
      "r358",
      "r364",
      "r380",
      "r439",
      "r868"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeLossFromContinuingOperationsPerDilutedShare",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income (Loss) from Continuing Operations, Per Diluted Share",
        "terseLabel": "Diluted",
        "documentation": "The amount of net income (loss) derived from continuing operations during the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r66",
      "r139",
      "r154",
      "r156",
      "r157",
      "r158",
      "r159",
      "r160",
      "r168",
      "r170",
      "r171",
      "r172",
      "r364",
      "r380",
      "r439",
      "r868"
     ]
    },
    "us-gaap_IncomeStatementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeStatementAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Statements of Operations"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeStatementLocationAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement Location [Axis]",
        "documentation": "Information by location in statement of income where disaggregated amount has been reported."
       }
      }
     },
     "auth_ref": [
      "r215",
      "r221",
      "r222",
      "r387",
      "r389",
      "r394",
      "r463",
      "r465",
      "r516",
      "r544",
      "r582",
      "r870"
     ]
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeStatementLocationDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement Location [Domain]",
        "documentation": "Location in statement of income where disaggregated amount has been reported."
       }
      }
     },
     "auth_ref": [
      "r221",
      "r222",
      "r387",
      "r389",
      "r394",
      "r463",
      "r465",
      "r516",
      "r544",
      "r582",
      "r870"
     ]
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Taxes"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxDisclosureTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureIncomeTaxes"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Text Block]",
        "terseLabel": "Income Taxes",
        "documentation": "The entire disclosure for income tax."
       }
      }
     },
     "auth_ref": [
      "r149",
      "r338",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r350",
      "r352",
      "r353",
      "r354",
      "r479",
      "r577"
     ]
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxExpenseBenefit",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureIncomeTaxesDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Expense (Benefit)",
        "terseLabel": "Income tax expense (benefit)",
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r109",
      "r115",
      "r163",
      "r164",
      "r177",
      "r185",
      "r188",
      "r341",
      "r342",
      "r351",
      "r454",
      "r577"
     ]
    },
    "us-gaap_IncomeTaxesPaid": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxesPaid",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Taxes Paid",
        "terseLabel": "Cash paid for taxes",
        "documentation": "Amount, before refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r76",
      "r705",
      "r845",
      "r846"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInAccountsPayable",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Accounts Payable",
        "terseLabel": "Accounts payable",
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Accounts Receivable",
        "negatedLabel": "Accounts receivable",
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInContractWithCustomerAsset",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Contract Receivables, Net",
        "negatedLabel": "Accounts receivable, non-current",
        "documentation": "Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time."
       }
      }
     },
     "auth_ref": [
      "r703"
     ]
    },
    "us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInEmployeeRelatedLiabilities",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Employee Related Liabilities",
        "terseLabel": "Accrued payroll and related taxes",
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "us-gaap_IncreaseDecreaseInIncomeTaxesReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInIncomeTaxesReceivable",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Income Taxes Receivable",
        "negatedLabel": "Income taxes",
        "documentation": "The increase (decrease) during the reporting period in income taxes receivable, which represents the amount due from tax authorities for refunds of overpayments or recoveries of income taxes paid."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInInventories",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Inventories",
        "negatedLabel": "Inventories",
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "tcmd_IncreaseDecreaseInNetInvestmentInLease": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "IncreaseDecreaseInNetInvestmentInLease",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the increase (decrease) in net investment in leases.",
        "label": "Increase (Decrease) In Net Investment in Lease",
        "negatedLabel": "Net investment in leases"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Operating Capital [Abstract]",
        "terseLabel": "Changes in assets and liabilities, net of acquisition:"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_IncreaseDecreaseInOperatingLeaseRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "IncreaseDecreaseInOperatingLeaseRightOfUseAsset",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the increase (decrease) in right of use operating lease assets.",
        "label": "Increase (Decrease) In Operating Lease Right Of Use Asset",
        "negatedLabel": "Right of use operating lease assets"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in other expenses (excluding accrued payroll and related taxes) and income taxes payable incurred but not yet paid.",
        "label": "Increase Decrease In Other Accrued Liabilities And Income Taxes Payable",
        "terseLabel": "Accrued expenses and other liabilities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Prepaid Expense and Other Assets",
        "negatedLabel": "Prepaid expenses and other assets",
        "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInStockholdersEquityRollForward",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Stockholders' Equity",
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period."
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_IncrementalShareIncrease": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "IncrementalShareIncrease",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the minimum increase in shares on an annual basis.",
        "label": "Incremental Share Increase",
        "terseLabel": "Incremental share increase (in shares)"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_IncrementalSharesToBeIssuedPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "IncrementalSharesToBeIssuedPercentage",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the incremental annual share percentage increase minimum.",
        "label": "Incremental Shares To Be Issued Percentage",
        "terseLabel": "Incremental share increase (as a percent)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IndefiniteLivedIntangibleAssetsByMajorClassAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Indefinite-lived Intangible Assets [Axis]",
        "documentation": "Information by type or class of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit."
       }
      }
     },
     "auth_ref": [
      "r200",
      "r205",
      "r210",
      "r556"
     ]
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwill",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Indefinite-lived Intangible Assets (Excluding Goodwill)",
        "terseLabel": "Gross Carrying Amount, Indefinite",
        "documentation": "Amount of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit."
       }
      }
     },
     "auth_ref": [
      "r198",
      "r210",
      "r556"
     ]
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwillAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Indefinite-lived Intangible Assets (Excluding Goodwill) [Abstract]",
        "terseLabel": "Unamortized intangible assets:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IndefiniteLivedIntangibleAssetsMajorClassNameDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Indefinite-lived Intangible Assets, Major Class Name [Domain]",
        "documentation": "The major class of indefinite-lived intangible asset (for example, trade names, etc. but not all-inclusive), excluding goodwill. 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 the company."
       }
      }
     },
     "auth_ref": [
      "r200",
      "r205",
      "r210",
      "r556"
     ]
    },
    "ecd_IndividualAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "IndividualAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure",
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure",
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Individual [Axis]",
        "terseLabel": "Individual:"
       }
      }
     },
     "auth_ref": [
      "r620",
      "r630",
      "r640",
      "r664",
      "r672",
      "r676",
      "r684"
     ]
    },
    "ecd_InsiderTradingArrLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "InsiderTradingArrLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Arrangements [Line Items]",
        "terseLabel": "Insider Trading Arrangements:"
       }
      }
     },
     "auth_ref": [
      "r682"
     ]
    },
    "ecd_InsiderTradingPoliciesProcLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "InsiderTradingPoliciesProcLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures [Line Items]",
        "terseLabel": "Insider Trading Policies and Procedures:"
       }
      }
     },
     "auth_ref": [
      "r612",
      "r688"
     ]
    },
    "ecd_InsiderTrdPoliciesProcAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "InsiderTrdPoliciesProcAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures Adopted [Flag]",
        "terseLabel": "Insider Trading Policies and Procedures Adopted"
       }
      }
     },
     "auth_ref": [
      "r612",
      "r688"
     ]
    },
    "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]",
        "terseLabel": "Insider Trading Policies and Procedures Not Adopted"
       }
      }
     },
     "auth_ref": [
      "r612",
      "r688"
     ]
    },
    "us-gaap_IntangibleAssetsGrossExcludingGoodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IntangibleAssetsGrossExcludingGoodwill",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible Assets, Gross (Excluding Goodwill)",
        "verboseLabel": "Total intangible assets (Gross)",
        "documentation": "Amount before accumulated amortization of intangible assets, excluding goodwill."
       }
      }
     },
     "auth_ref": [
      "r123"
     ]
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible Assets, Net (Excluding Goodwill)",
        "netLabel": "Total intangible assets (Net)",
        "terseLabel": "Intangible assets, net",
        "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."
       }
      }
     },
     "auth_ref": [
      "r200",
      "r734",
      "r736"
     ]
    },
    "us-gaap_InterestPaidNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestPaidNet",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Paid, Net",
        "terseLabel": "Cash paid for interest",
        "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."
       }
      }
     },
     "auth_ref": [
      "r140",
      "r143",
      "r144"
     ]
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventories"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryDisclosureTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureInventories"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory Disclosure [Text Block]",
        "terseLabel": "Inventories",
        "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory."
       }
      }
     },
     "auth_ref": [
      "r197"
     ]
    },
    "us-gaap_InventoryFinishedGoods": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryFinishedGoods",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory, Finished Goods, Gross",
        "terseLabel": "Finished goods",
        "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r698"
     ]
    },
    "us-gaap_InventoryNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryNet",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureInventoriesDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory, Net",
        "terseLabel": "Inventories",
        "totalLabel": "Total inventories",
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r132",
      "r547",
      "r589"
     ]
    },
    "us-gaap_InventoryNetAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryNetAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory, Net [Abstract]",
        "verboseLabel": "Inventories"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryWorkInProcess": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryWorkInProcess",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory, Work in Process, Gross",
        "terseLabel": "Component parts and work-in-process",
        "documentation": "Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r699"
     ]
    },
    "tcmd_KristieT.BurnsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "KristieT.BurnsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the member information pertaining to Kristie T. Burns.",
        "label": "Kristie T. Burns [Member]",
        "terseLabel": "Kristie T. Burns"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeLeaseDescriptionLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeLeaseDescriptionLineItems",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Lease, Description [Line Items]",
        "verboseLabel": "Commitments and Contingencies",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r415",
      "r423"
     ]
    },
    "us-gaap_LesseeLeaseDescriptionTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeLeaseDescriptionTable",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Lease, Description [Table]",
        "documentation": "Disclosure of information about lessee's leases."
       }
      }
     },
     "auth_ref": [
      "r415",
      "r423"
     ]
    },
    "us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseExistenceOfOptionToExtend",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Existence of Option to Extend [true false]",
        "terseLabel": "Option to renew",
        "documentation": "Indicates (true false) whether lessee has option to extend operating lease."
       }
      }
     },
     "auth_ref": [
      "r416"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, Payments, Due",
        "totalLabel": "Total minimum lease payments",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease."
       }
      }
     },
     "auth_ref": [
      "r421"
     ]
    },
    "tcmd_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after 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": "Lessee Operating Lease Liability Payments Due after Year Four",
        "terseLabel": "Thereafter"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months",
        "terseLabel": "2025",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r421"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, Payments, Due Year Four",
        "terseLabel": "2028",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r421"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, Payments, Due Year Three",
        "terseLabel": "2027",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r421"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, Payments, Due Year Two",
        "terseLabel": "2026",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r421"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, Payments, Remainder of Fiscal Year",
        "terseLabel": "2024 (July 1 - December 31)",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year."
       }
      }
     },
     "auth_ref": [
      "r857"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "negatedLabel": "Less: Amount of lease payments representing interest",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease."
       }
      }
     },
     "auth_ref": [
      "r421"
     ]
    },
    "us-gaap_LesseeOperatingLeaseTermOfContract": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseTermOfContract",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Term of Contract",
        "terseLabel": "Lease terms",
        "documentation": "Term of lessee's operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r856"
     ]
    },
    "us-gaap_Liabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "Liabilities",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities",
        "totalLabel": "Total liabilities",
        "documentation": "Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r46",
      "r47",
      "r48",
      "r50",
      "r51",
      "r52",
      "r53",
      "r148",
      "r193",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r367",
      "r370",
      "r371",
      "r400",
      "r491",
      "r550",
      "r607",
      "r753",
      "r858",
      "r859"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesAndStockholdersEquity",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities and Equity",
        "totalLabel": "Total liabilities and stockholders' equity",
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any."
       }
      }
     },
     "auth_ref": [
      "r60",
      "r100",
      "r447",
      "r589",
      "r708",
      "r721",
      "r852"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities and Equity [Abstract]",
        "terseLabel": "Liabilities and Stockholders' Equity"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Current",
        "totalLabel": "Total current liabilities",
        "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r48",
      "r121",
      "r148",
      "r193",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r367",
      "r370",
      "r371",
      "r400",
      "r589",
      "r753",
      "r858",
      "r859"
     ]
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesCurrentAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Current [Abstract]",
        "terseLabel": "Current liabilities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesFairValueAdjustment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesFairValueAdjustment",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Fair Value Adjustment",
        "negatedLabel": "Change in fair value of earn-out liability",
        "documentation": "Amount of addition (reduction) to the amount at which a liability could be incurred (settled) in a current transaction between willing parties."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total long-term liabilities, net of current portion",
        "totalLabel": "Total non-current liabilities",
        "documentation": "Amount of obligation due after one year or beyond the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r50",
      "r51",
      "r52",
      "r53",
      "r148",
      "r193",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r367",
      "r370",
      "r371",
      "r400",
      "r753",
      "r858",
      "r859"
     ]
    },
    "us-gaap_LiabilitiesNoncurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesNoncurrentAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Noncurrent [Abstract]",
        "terseLabel": "Non-current liabilities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LineOfCredit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCredit",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-term Line of Credit",
        "verboseLabel": "Credit facility outstanding amount",
        "documentation": "The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r98",
      "r867"
     ]
    },
    "us-gaap_LineOfCreditFacilityLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityLineItems",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails",
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit Facility [Line Items]",
        "verboseLabel": "Credit Agreement",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r242",
      "r707",
      "r751"
     ]
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit Facility, Maximum Borrowing Capacity",
        "verboseLabel": "Line of credit",
        "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility."
       }
      }
     },
     "auth_ref": [
      "r45",
      "r49"
     ]
    },
    "us-gaap_LineOfCreditFacilityTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityTable",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails",
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit Facility [Table]",
        "documentation": "Disclosure of information about short-term and long-term contractual arrangements with lender under which borrowing can occur up to maximum amount. Includes, but is not limited to, letter of credit, standby letter of credit, and revolving credit arrangement."
       }
      }
     },
     "auth_ref": [
      "r45",
      "r49",
      "r242",
      "r707",
      "r751"
     ]
    },
    "us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit Facility, Unused Capacity, Commitment Fee Percentage",
        "terseLabel": "Unused line fee (as a percent)",
        "documentation": "The fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the credit facility."
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_LineOfCreditThresholdContingentIncreaseInBorrowingCapacity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "LineOfCreditThresholdContingentIncreaseInBorrowingCapacity",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line Of Credit, Threshold Contingent Increase In Borrowing Capacity",
        "label": "Line Of Credit, Threshold Contingent Increase In Borrowing Capacity",
        "terseLabel": "Line of credit, threshold contingent increase in borrowing capacity"
       }
      }
     },
     "auth_ref": []
    },
    "srt_LitigationCaseAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "LitigationCaseAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Litigation Case [Axis]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_LitigationCaseTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "LitigationCaseTypeDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Litigation Case [Domain]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LitigationSettlementLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LitigationSettlementLoss",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Litigation Settlement, Loss",
        "terseLabel": "Litigation fees and expenses",
        "documentation": "Amount of loss from litigation settlement for amount awarded to other party. Excludes claims within an insurance entity's normal claims settlement process."
       }
      }
     },
     "auth_ref": [
      "r742"
     ]
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebt",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails",
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-term Debt",
        "terseLabel": "Long-term debt",
        "totalLabel": "Net Note Payable",
        "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r98",
      "r260",
      "r268",
      "r558",
      "r559",
      "r587",
      "r867"
     ]
    },
    "us-gaap_LongTermDebtByMaturityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtByMaturityAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-term Debt, Fiscal Year Maturity [Abstract]",
        "terseLabel": "Maturities of notes payable"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermDebtCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt, Current Maturities",
        "negatedLabel": "Less: Current portion of note payable",
        "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as current. Excludes lease obligation."
       }
      }
     },
     "auth_ref": [
      "r127"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt, Maturity, Year One",
        "terseLabel": "2025",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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)."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r150",
      "r263"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt, Maturity, Year Two",
        "terseLabel": "2026",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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)."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r150",
      "r263"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt, Maturity, Remainder of Fiscal Year",
        "terseLabel": "2024 (July 1 - December 31)",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in remainder of current fiscal year."
       }
      }
     },
     "auth_ref": [
      "r709"
     ]
    },
    "us-gaap_LongTermDebtNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-term Debt, Excluding Current Maturities",
        "verboseLabel": "Non-current portion of note payable",
        "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation."
       }
      }
     },
     "auth_ref": [
      "r128"
     ]
    },
    "us-gaap_LongTermNotesPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermNotesPayable",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Notes Payable, Noncurrent",
        "terseLabel": "Note payable, non-current",
        "documentation": "Carrying value as of the balance sheet date of notes payable (with maturities initially due after one year or beyond the operating cycle if longer), excluding current portion."
       }
      }
     },
     "auth_ref": [
      "r11"
     ]
    },
    "us-gaap_LossContingenciesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LossContingenciesLineItems",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Loss Contingencies [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r225",
      "r226",
      "r227",
      "r230",
      "r336",
      "r557",
      "r743",
      "r744"
     ]
    },
    "us-gaap_LossContingenciesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LossContingenciesTable",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Loss Contingencies [Table]",
        "documentation": "Disclosure of information about loss contingency. Excludes environmental contingency, warranty, and unconditional purchase obligation."
       }
      }
     },
     "auth_ref": [
      "r225",
      "r226",
      "r227",
      "r230",
      "r336",
      "r557",
      "r743",
      "r744"
     ]
    },
    "tcmd_LymphedemaProductsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "LymphedemaProductsMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to Lymphedema products.",
        "label": "Lymphedema products",
        "terseLabel": "Lymphedema products"
       }
      }
     },
     "auth_ref": []
    },
    "srt_MajorCustomersAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "MajorCustomersAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Axis]"
       }
      }
     },
     "auth_ref": [
      "r191",
      "r563",
      "r591",
      "r594",
      "r757",
      "r869",
      "r871",
      "r872",
      "r874",
      "r875",
      "r876",
      "r877",
      "r878",
      "r879",
      "r880",
      "r881",
      "r882",
      "r883",
      "r884",
      "r885",
      "r886",
      "r887",
      "r888",
      "r889",
      "r890",
      "r891",
      "r892",
      "r893",
      "r894",
      "r895",
      "r896",
      "r897",
      "r898"
     ]
    },
    "srt_MaximumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "MaximumMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails",
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails",
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum",
        "terseLabel": "Maximum"
       }
      }
     },
     "auth_ref": [
      "r226",
      "r227",
      "r228",
      "r229",
      "r299",
      "r336",
      "r386",
      "r433",
      "r462",
      "r464",
      "r471",
      "r483",
      "r484",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r542",
      "r543",
      "r554",
      "r560",
      "r573",
      "r583",
      "r584",
      "r585",
      "r586",
      "r592",
      "r755",
      "r860",
      "r861",
      "r862",
      "r863",
      "r864",
      "r865"
     ]
    },
    "ecd_MeasureAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "MeasureAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measure [Axis]",
        "terseLabel": "Measure:"
       }
      }
     },
     "auth_ref": [
      "r656"
     ]
    },
    "ecd_MeasureName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "MeasureName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measure Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r656"
     ]
    },
    "tcmd_MedicareAccountsReceivableNonCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "MedicareAccountsReceivableNonCurrent",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of non-current accounts receivable on account of medicare.",
        "label": "Medicare Accounts Receivable Non Current",
        "verboseLabel": "Accounts receivable, non-current"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_MedicareMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "MedicareMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to government payer medicare.",
        "label": "Medicare",
        "terseLabel": "Medicare"
       }
      }
     },
     "auth_ref": []
    },
    "srt_MinimumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "MinimumMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails",
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails",
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum",
        "terseLabel": "Minimum"
       }
      }
     },
     "auth_ref": [
      "r226",
      "r227",
      "r228",
      "r229",
      "r299",
      "r336",
      "r386",
      "r433",
      "r462",
      "r464",
      "r471",
      "r483",
      "r484",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r542",
      "r543",
      "r554",
      "r560",
      "r573",
      "r583",
      "r584",
      "r585",
      "r592",
      "r755",
      "r860",
      "r861",
      "r862",
      "r863",
      "r864",
      "r865"
     ]
    },
    "ecd_MnpiDiscTimedForCompValFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "MnpiDiscTimedForCompValFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "MNPI Disclosure Timed for Compensation Value [Flag]",
        "terseLabel": "MNPI Disclosure Timed for Compensation Value"
       }
      }
     },
     "auth_ref": [
      "r675"
     ]
    },
    "us-gaap_MovementInStandardProductWarrantyAccrualRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "MovementInStandardProductWarrantyAccrualRollForward",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureWarrantyReservesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Movement in Standard Product Warranty Accrual [Roll Forward]",
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_MtrlTermsOfTrdArrTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "MtrlTermsOfTrdArrTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Material Terms of Trading Arrangement [Text Block]",
        "terseLabel": "Material Terms of Trading Arrangement"
       }
      }
     },
     "auth_ref": [
      "r683"
     ]
    },
    "srt_NameOfMajorCustomerDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "NameOfMajorCustomerDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Domain]"
       }
      }
     },
     "auth_ref": [
      "r191",
      "r563",
      "r591",
      "r594",
      "r757",
      "r869",
      "r871",
      "r872",
      "r874",
      "r875",
      "r876",
      "r877",
      "r878",
      "r879",
      "r880",
      "r881",
      "r882",
      "r883",
      "r884",
      "r885",
      "r886",
      "r887",
      "r888",
      "r889",
      "r890",
      "r891",
      "r892",
      "r893",
      "r894",
      "r895",
      "r896",
      "r897",
      "r898"
     ]
    },
    "ecd_NamedExecutiveOfficersFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NamedExecutiveOfficersFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Named Executive Officers, Footnote [Text Block]",
        "terseLabel": "Named Executive Officers, Footnote"
       }
      }
     },
     "auth_ref": [
      "r657"
     ]
    },
    "tcmd_NatureOfBusinessAndOperationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "NatureOfBusinessAndOperationAbstract",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "n/a",
        "label": "Nature of Business and Operations"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NatureOfOperations": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NatureOfOperations",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Nature of Operations [Text Block]",
        "verboseLabel": "Nature of Business and Operations",
        "documentation": "The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward."
       }
      }
     },
     "auth_ref": [
      "r110",
      "r116"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInContinuingOperationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInContinuingOperationsAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Continuing Operations [Abstract]",
        "terseLabel": "Cash flows from operating activities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities",
        "totalLabel": "Net cash (used in) provided by financing activities",
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit."
       }
      }
     },
     "auth_ref": [
      "r142"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities, Continuing Operations [Abstract]",
        "terseLabel": "Cash flows from financing activities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities",
        "totalLabel": "Net cash used in investing activities",
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets."
       }
      }
     },
     "auth_ref": [
      "r142"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities, Continuing Operations [Abstract]",
        "terseLabel": "Cash flows from investing activities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "totalLabel": "Net cash provided by operating activities",
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities."
       }
      }
     },
     "auth_ref": [
      "r74",
      "r75",
      "r77"
     ]
    },
    "us-gaap_NetIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetIncomeLoss",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareBasicAndDilutedNetIncomeLossPerShareDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net income (loss)",
        "verboseLabel": "Net loss for the period",
        "label": "Net Income (Loss)",
        "terseLabel": "Net Income (Loss)",
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r68",
      "r77",
      "r103",
      "r119",
      "r134",
      "r135",
      "r138",
      "r148",
      "r154",
      "r156",
      "r157",
      "r158",
      "r159",
      "r160",
      "r163",
      "r164",
      "r169",
      "r193",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r358",
      "r364",
      "r380",
      "r400",
      "r451",
      "r513",
      "r529",
      "r530",
      "r605",
      "r753"
     ]
    },
    "us-gaap_NetInvestmentInLease": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetInvestmentInLease",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Investment in Lease",
        "terseLabel": "Net investment in leases",
        "documentation": "Amount, before allowance for credit loss, of net investment in sales-type and direct financing leases."
       }
      }
     },
     "auth_ref": [
      "r108",
      "r196",
      "r424",
      "r722"
     ]
    },
    "tcmd_NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements not yet adopted.",
        "label": "New Accounting Pronouncements, Note Yet Adopted Policy [Policy Text Block]",
        "terseLabel": "Accounting Pronouncement Not Yet Adopted"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_NonGaapMeasureDescriptionTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonGaapMeasureDescriptionTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-GAAP Measure Description [Text Block]",
        "terseLabel": "Non-GAAP Measure Description"
       }
      }
     },
     "auth_ref": [
      "r656"
     ]
    },
    "ecd_NonNeosMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonNeosMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-NEOs [Member]",
        "terseLabel": "Non-NEOs"
       }
      }
     },
     "auth_ref": [
      "r620",
      "r630",
      "r640",
      "r664",
      "r672"
     ]
    },
    "ecd_NonPeoNeoAvgCompActuallyPaidAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonPeoNeoAvgCompActuallyPaidAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-PEO NEO Average Compensation Actually Paid Amount",
        "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount"
       }
      }
     },
     "auth_ref": [
      "r647"
     ]
    },
    "ecd_NonPeoNeoAvgTotalCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonPeoNeoAvgTotalCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-PEO NEO Average Total Compensation Amount",
        "terseLabel": "Non-PEO NEO Average Total Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r646"
     ]
    },
    "ecd_NonPeoNeoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonPeoNeoMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-PEO NEO [Member]",
        "terseLabel": "Non-PEO NEO"
       }
      }
     },
     "auth_ref": [
      "r664"
     ]
    },
    "ecd_NonRule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonRule10b51ArrAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]",
        "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted"
       }
      }
     },
     "auth_ref": [
      "r683"
     ]
    },
    "ecd_NonRule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonRule10b51ArrTrmntdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]",
        "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated"
       }
      }
     },
     "auth_ref": [
      "r683"
     ]
    },
    "us-gaap_NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Noncash or Part Noncash Acquisition, Value of Assets Acquired",
        "terseLabel": "Capital expenditures incurred but not yet paid",
        "documentation": "The value of an asset or business acquired in a noncash (or part noncash) acquisition. Noncash is defined as information about all investing and financing activities of an enterprise during a period that affect recognized assets or liabilities but that do not result in cash receipts or cash payments in the period. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period."
       }
      }
     },
     "auth_ref": [
      "r15",
      "r16",
      "r17"
     ]
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NonoperatingIncomeExpense",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Nonoperating Income (Expense)",
        "verboseLabel": "Other income (expense)",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r70"
     ]
    },
    "us-gaap_NotesPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NotesPayableCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Notes Payable, Current",
        "terseLabel": "Note payable",
        "documentation": "Sum of the carrying values as of the balance sheet date of the portions of long-term notes payable due within one year or the operating cycle if longer."
       }
      }
     },
     "auth_ref": [
      "r46",
      "r47"
     ]
    },
    "tcmd_NumberOfOfficerAndDirectors": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "NumberOfOfficerAndDirectors",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of officers and directors.",
        "label": "Number of officer and directors",
        "terseLabel": "Number of former officers and directors"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_NumberOfVendors": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "NumberOfVendors",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the number of vendors.",
        "label": "Number Of Vendors",
        "terseLabel": "Number of vendors"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingExpenses",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Expenses",
        "totalLabel": "Total operating expenses",
        "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingExpensesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingExpensesAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Expenses [Abstract]",
        "terseLabel": "Operating expenses"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingIncomeLoss",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Income (Loss)",
        "totalLabel": "Income (loss) from operations",
        "documentation": "The net result for the period of deducting operating expenses from operating revenues."
       }
      }
     },
     "auth_ref": [
      "r106",
      "r551",
      "r715",
      "r716",
      "r717",
      "r718",
      "r719"
     ]
    },
    "us-gaap_OperatingLeaseLeaseIncomeTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLeaseIncomeTableTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Lease Income [Table Text Block]",
        "terseLabel": "Summary of undiscounted cash flows",
        "documentation": "Tabular disclosure of components of income from operating lease."
       }
      }
     },
     "auth_ref": [
      "r178",
      "r425"
     ]
    },
    "us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilitiesPaymentsDueAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease Liabilities, Payments Due [Abstract]",
        "terseLabel": "Undiscounted cash flows"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiability",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails",
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Liability",
        "totalLabel": "Present value of future minimum lease payments",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease."
       }
      }
     },
     "auth_ref": [
      "r412"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails",
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Liability, Current",
        "negatedLabel": "Less: Current obligations under operating lease liabilities",
        "terseLabel": "Operating lease liabilities",
        "verboseLabel": "Operating lease liabilities, Current",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current."
       }
      }
     },
     "auth_ref": [
      "r412"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]",
        "documentation": "Indicates line item in statement of financial position that includes current operating lease liability."
       }
      }
     },
     "auth_ref": [
      "r413"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails",
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesUndiscountedCashFlowsDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Liability, Noncurrent",
        "terseLabel": "Operating lease liabilities, non-current",
        "verboseLabel": "Non-current obligations under operating lease liabilities",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r412"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]",
        "documentation": "Indicates line item in statement of financial position that includes noncurrent operating lease liability."
       }
      }
     },
     "auth_ref": [
      "r413"
     ]
    },
    "us-gaap_OperatingLeasePayments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeasePayments",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Payments",
        "terseLabel": "Cash paid for operating lease liabilities",
        "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use."
       }
      }
     },
     "auth_ref": [
      "r414",
      "r417"
     ]
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseRightOfUseAsset",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Right-of-Use Asset",
        "verboseLabel": "Right of use operating lease assets",
        "documentation": "Amount of lessee's right to use underlying asset under operating lease."
       }
      }
     },
     "auth_ref": [
      "r411"
     ]
    },
    "us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseRightOfUseAssetAmortizationExpense",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseCommitmentsAndOperatingLeaseCostDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Right-of-Use Asset, Amortization Expense",
        "terseLabel": "Operating lease cost",
        "documentation": "Amount of periodic reduction over lease term of carrying amount of right-of-use asset from operating lease."
       }
      }
     },
     "auth_ref": [
      "r704"
     ]
    },
    "us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List]",
        "documentation": "Indicates line item in statement of financial position that includes operating lease right-of-use asset."
       }
      }
     },
     "auth_ref": [
      "r413"
     ]
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Weighted Average Discount Rate, Percent",
        "terseLabel": "Weighted average discount rate",
        "documentation": "Weighted average discount rate for operating lease calculated at point in time."
       }
      }
     },
     "auth_ref": [
      "r420",
      "r588"
     ]
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Weighted Average Remaining Lease Term",
        "terseLabel": "Weighted average remaining lease term",
        "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."
       }
      }
     },
     "auth_ref": [
      "r419",
      "r588"
     ]
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Basis of Presentation"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAccruedLiabilitiesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureAccruedExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Accrued Liabilities, Current",
        "terseLabel": "Other",
        "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r47"
     ]
    },
    "us-gaap_OtherAssetsMiscellaneousAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAssetsMiscellaneousAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Assets, Miscellaneous [Abstract]",
        "terseLabel": "Non-current assets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAssetsNoncurrent",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Assets, Noncurrent",
        "terseLabel": "Other non-current assets",
        "documentation": "Amount of noncurrent assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r125"
     ]
    },
    "us-gaap_OtherLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherLiabilitiesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Liabilities, Current",
        "terseLabel": "Other current liabilities",
        "documentation": "Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r47",
      "r589"
     ]
    },
    "ecd_OtherPerfMeasureAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "OtherPerfMeasureAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Performance Measure, Amount",
        "terseLabel": "Other Performance Measure, Amount"
       }
      }
     },
     "auth_ref": [
      "r656"
     ]
    },
    "ecd_OutstandingAggtErrCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "OutstandingAggtErrCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Aggregate Erroneous Compensation Amount",
        "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r618",
      "r628",
      "r638",
      "r670"
     ]
    },
    "ecd_OutstandingRecoveryCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "OutstandingRecoveryCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Recovery Compensation Amount",
        "terseLabel": "Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r621",
      "r631",
      "r641",
      "r673"
     ]
    },
    "ecd_OutstandingRecoveryIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "OutstandingRecoveryIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Recovery, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r621",
      "r631",
      "r641",
      "r673"
     ]
    },
    "us-gaap_PatentsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PatentsMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Patents",
        "terseLabel": "Patents pending",
        "documentation": "Exclusive legal right granted by the government to the owner of the patent to exploit an invention or a process for a period of time specified by law."
       }
      }
     },
     "auth_ref": [
      "r92",
      "r727",
      "r728",
      "r729",
      "r730",
      "r732",
      "r734",
      "r737",
      "r738"
     ]
    },
    "ecd_PayVsPerformanceDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PayVsPerformanceDisclosureLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance Disclosure [Line Items]",
        "terseLabel": "Pay vs Performance Disclosure"
       }
      }
     },
     "auth_ref": [
      "r645"
     ]
    },
    "us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentForContingentConsiderationLiabilityFinancingActivities",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsEarnOutLiabilityDetails",
      "http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsFairValueHierarchyDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payment for Contingent Consideration Liability, Financing Activities",
        "negatedLabel": "Payments on earn-out",
        "verboseLabel": "Earn-out liability payment",
        "documentation": "Amount of cash outflow, not made soon after acquisition date of business combination, to settle contingent consideration liability up to amount recognized at acquisition date, including, but not limited to, measurement period adjustment and less amount paid soon after acquisition date."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "us-gaap_PaymentsToAcquireIntangibleAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsToAcquireIntangibleAssets",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payments to Acquire Intangible Assets",
        "negatedLabel": "Intangible assets expenditures",
        "documentation": "The cash outflow to acquire asset without physical form usually arising from contractual or other legal rights, excluding goodwill."
       }
      }
     },
     "auth_ref": [
      "r72"
     ]
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "negatedLabel": "Purchases of property and equipment",
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets."
       }
      }
     },
     "auth_ref": [
      "r72"
     ]
    },
    "ecd_PeerGroupIssuersFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeerGroupIssuersFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Peer Group Issuers, Footnote [Text Block]",
        "terseLabel": "Peer Group Issuers, Footnote"
       }
      }
     },
     "auth_ref": [
      "r655"
     ]
    },
    "ecd_PeerGroupTotalShareholderRtnAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeerGroupTotalShareholderRtnAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Peer Group Total Shareholder Return Amount",
        "terseLabel": "Peer Group Total Shareholder Return Amount"
       }
      }
     },
     "auth_ref": [
      "r655"
     ]
    },
    "ecd_PeoActuallyPaidCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeoActuallyPaidCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Actually Paid Compensation Amount",
        "terseLabel": "PEO Actually Paid Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r647"
     ]
    },
    "ecd_PeoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeoMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO [Member]",
        "terseLabel": "PEO"
       }
      }
     },
     "auth_ref": [
      "r664"
     ]
    },
    "ecd_PeoName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeoName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Name",
        "terseLabel": "PEO Name"
       }
      }
     },
     "auth_ref": [
      "r657"
     ]
    },
    "ecd_PeoTotalCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeoTotalCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Total Compensation Amount",
        "terseLabel": "PEO Total Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r646"
     ]
    },
    "tcmd_PercentageOfRevenue": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "PercentageOfRevenue",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of revenue disaggregated by products.",
        "label": "Percentage Of Revenue",
        "terseLabel": "Percentage of total revenue (in percent)"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "PerformanceBasedStockSettledRestrictedStockUnitsMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This member stands for performance-based stock-settled restricted stock units plan.",
        "label": "Performance-based stock-settled restricted stock units"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PerformanceSharesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PerformanceSharesMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Performance Shares [Member]",
        "terseLabel": "Performance stock units",
        "documentation": "Share-based payment arrangement awarded for meeting performance target."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PlanNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PlanNameAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Plan Name [Axis]",
        "documentation": "Information by plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r818",
      "r819",
      "r820",
      "r821",
      "r822",
      "r823",
      "r824",
      "r825",
      "r826",
      "r827",
      "r828",
      "r829",
      "r830",
      "r831",
      "r832",
      "r833",
      "r834",
      "r835",
      "r836",
      "r837",
      "r838",
      "r839",
      "r840",
      "r841",
      "r842",
      "r843"
     ]
    },
    "us-gaap_PlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PlanNameDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Plan Name [Domain]",
        "documentation": "Plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r818",
      "r819",
      "r820",
      "r821",
      "r822",
      "r823",
      "r824",
      "r825",
      "r826",
      "r827",
      "r828",
      "r829",
      "r830",
      "r831",
      "r832",
      "r833",
      "r834",
      "r835",
      "r836",
      "r837",
      "r838",
      "r839",
      "r840",
      "r841",
      "r842",
      "r843"
     ]
    },
    "ecd_PnsnAdjsPrrSvcCstMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PnsnAdjsPrrSvcCstMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Adjustments Prior Service Cost [Member]",
        "terseLabel": "Pension Adjustments Prior Service Cost"
       }
      }
     },
     "auth_ref": [
      "r648"
     ]
    },
    "ecd_PnsnAdjsSvcCstMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PnsnAdjsSvcCstMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Adjustments Service Cost [Member]",
        "terseLabel": "Pension Adjustments Service Cost"
       }
      }
     },
     "auth_ref": [
      "r692"
     ]
    },
    "ecd_PnsnBnftsAdjFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PnsnBnftsAdjFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Benefits Adjustments, Footnote [Text Block]",
        "terseLabel": "Pension Benefits Adjustments, Footnote"
       }
      }
     },
     "auth_ref": [
      "r647"
     ]
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockParOrStatedValuePerShare",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Par or Stated Value Per Share",
        "terseLabel": "Preferred stock, par value (in dollars per share)",
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer."
       }
      }
     },
     "auth_ref": [
      "r54",
      "r269"
     ]
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockSharesAuthorized",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Shares Authorized",
        "terseLabel": "Preferred stock, shares authorized",
        "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r54",
      "r493"
     ]
    },
    "us-gaap_PreferredStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockSharesIssued",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred stock, shares issued",
        "terseLabel": "Preferred stock, shares issued",
        "documentation": "Number of shares issued for nonredeemable preferred shares and preferred shares redeemable solely at option of issuer. Includes, but is not limited to, preferred shares issued, repurchased, and held as treasury shares. Excludes preferred shares classified as debt."
       }
      }
     },
     "auth_ref": [
      "r54",
      "r269"
     ]
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockSharesOutstanding",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Shares Outstanding",
        "terseLabel": "Preferred stock, shares outstanding",
        "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased."
       }
      }
     },
     "auth_ref": [
      "r54",
      "r493",
      "r511",
      "r901",
      "r902"
     ]
    },
    "us-gaap_PreferredStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockValue",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Value, Issued",
        "verboseLabel": "Preferred stock, $0.001 par value, 50,000,000 shares authorized; none issued and outstanding as of June 30, 2024 and December 31, 2023",
        "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity."
       }
      }
     },
     "auth_ref": [
      "r54",
      "r444",
      "r589"
     ]
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PrepaidExpenseAndOtherAssetsCurrent",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prepaid Expense and Other Assets, Current",
        "terseLabel": "Prepaid expenses and other current assets",
        "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."
       }
      }
     },
     "auth_ref": [
      "r700"
     ]
    },
    "tcmd_PrivateInsurersMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "PrivateInsurersMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to private insurers and other payers.",
        "label": "Private insurers and other payers",
        "terseLabel": "Private insurers and other payers"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProceedsFromIssuanceInitialPublicOffering": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromIssuanceInitialPublicOffering",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from Issuance Initial Public Offering",
        "terseLabel": "Net proceeds from the initial public offering",
        "documentation": "The cash inflow associated with the amount received from entity's first offering of stock to the public."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "us-gaap_ProceedsFromIssuanceOfCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromIssuanceOfCommonStock",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from Issuance of Common Stock",
        "terseLabel": "Proceeds from issuance of common stock at market",
        "documentation": "The cash inflow from the additional capital contribution to the entity."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "us-gaap_ProceedsFromIssuanceOfDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromIssuanceOfDebt",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from Issuance of Debt",
        "terseLabel": "Increase in term debt",
        "documentation": "The cash inflow during the period from additional borrowings in aggregate debt. Includes proceeds from short-term and long-term debt."
       }
      }
     },
     "auth_ref": [
      "r702"
     ]
    },
    "us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds, Issuance of Shares, Share-Based Payment Arrangement, Excluding Option Exercised",
        "terseLabel": "Proceeds from the issuance of common stock from the employee stock purchase plan",
        "documentation": "Amount of cash inflow from issuance of shares under share-based payment arrangement. Excludes option exercised."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r10"
     ]
    },
    "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from Sale of Property, Plant, and Equipment",
        "terseLabel": "Proceeds from sale of property and equipment",
        "documentation": "The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale."
       }
      }
     },
     "auth_ref": [
      "r71"
     ]
    },
    "us-gaap_ProceedsFromStockOptionsExercised": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromStockOptionsExercised",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from Stock Options Exercised",
        "terseLabel": "Proceeds from exercise of common stock options",
        "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r10"
     ]
    },
    "us-gaap_ProductMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProductMember",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sales revenue",
        "documentation": "Article or substance produced by nature, labor or machinery."
       }
      }
     },
     "auth_ref": [
      "r561"
     ]
    },
    "srt_ProductOrServiceAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ProductOrServiceAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Products and Services [Axis]"
       }
      }
     },
     "auth_ref": [
      "r189",
      "r434",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r460",
      "r461",
      "r545",
      "r561",
      "r590",
      "r592",
      "r593",
      "r595",
      "r596",
      "r745",
      "r746",
      "r757",
      "r869",
      "r871",
      "r872",
      "r873",
      "r874",
      "r875",
      "r876",
      "r877",
      "r878",
      "r879",
      "r880",
      "r881",
      "r882",
      "r883",
      "r884",
      "r885",
      "r886",
      "r887",
      "r888",
      "r889",
      "r890",
      "r891",
      "r892",
      "r893",
      "r894",
      "r895",
      "r896",
      "r897",
      "r898"
     ]
    },
    "us-gaap_ProductWarrantyAccrual": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProductWarrantyAccrual",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureWarrantyReservesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Standard and Extended Product Warranty Accrual",
        "totalLabel": "Total accrued warranty reserve",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers."
       }
      }
     },
     "auth_ref": [
      "r97",
      "r235",
      "r239",
      "r240"
     ]
    },
    "us-gaap_ProductWarrantyAccrualClassifiedCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProductWarrantyAccrualClassifiedCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureAccruedExpensesDetails",
      "http://www.tactilemedical.com/role/DisclosureWarrantyReservesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product Warranty Accrual, Current",
        "terseLabel": "Warranty",
        "verboseLabel": "Accrued warranty reserve, current",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers. For classified balance sheets, represents the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r47",
      "r747",
      "r750"
     ]
    },
    "us-gaap_ProductWarrantyAccrualNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProductWarrantyAccrualNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureWarrantyReservesDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product Warranty Accrual, Noncurrent",
        "terseLabel": "Accrued warranty reserve, non-current",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and due after one year (or beyond the operating cycle if longer) for estimated claims under standard and extended warranty protection rights granted to customers."
       }
      }
     },
     "auth_ref": [
      "r51",
      "r747",
      "r750"
     ]
    },
    "us-gaap_ProductWarrantyDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProductWarrantyDisclosureTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureWarrantyReserves"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product Warranty Disclosure [Text Block]",
        "terseLabel": "Warranty Reserves",
        "documentation": "The entire disclosure for standard and extended product warranties and other product guarantee contracts, including a tabular reconciliation of the changes in the guarantor's aggregate product warranty liability for the reporting period."
       }
      }
     },
     "auth_ref": [
      "r231",
      "r232",
      "r233",
      "r234",
      "r236",
      "r237"
     ]
    },
    "srt_ProductsAndServicesDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ProductsAndServicesDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Products and Services [Domain]"
       }
      }
     },
     "auth_ref": [
      "r189",
      "r434",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r460",
      "r461",
      "r545",
      "r561",
      "r590",
      "r592",
      "r593",
      "r595",
      "r596",
      "r745",
      "r746",
      "r757",
      "r869",
      "r871",
      "r872",
      "r873",
      "r874",
      "r875",
      "r876",
      "r877",
      "r878",
      "r879",
      "r880",
      "r881",
      "r882",
      "r883",
      "r884",
      "r885",
      "r886",
      "r887",
      "r888",
      "r889",
      "r890",
      "r891",
      "r892",
      "r893",
      "r894",
      "r895",
      "r896",
      "r897",
      "r898"
     ]
    },
    "us-gaap_ProfitLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProfitLoss",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest",
        "verboseLabel": "Net income (loss)",
        "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r119",
      "r134",
      "r135",
      "r141",
      "r148",
      "r154",
      "r160",
      "r163",
      "r164",
      "r193",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r358",
      "r364",
      "r365",
      "r368",
      "r369",
      "r380",
      "r400",
      "r440",
      "r450",
      "r480",
      "r513",
      "r529",
      "r530",
      "r578",
      "r579",
      "r606",
      "r701",
      "r753"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment, Type [Axis]",
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r422"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentNet",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment, Net",
        "terseLabel": "Property and equipment, net",
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r422",
      "r441",
      "r448",
      "r589"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment, Type [Domain]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r81",
      "r422"
     ]
    },
    "us-gaap_PurchaseObligationDueInNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PurchaseObligationDueInNextTwelveMonths",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesPurchaseCommitmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Purchase Obligation, Due in Next Twelve Months",
        "verboseLabel": "Purchase orders issued",
        "documentation": "Amount of purchase arrangement to be paid in next fiscal year following current fiscal year. Includes, but is not limited to, recorded and unrecorded purchase obligations, long-term purchase commitment, and short-term purchase commitment. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PurchaseObligationFiscalYearMaturityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PurchaseObligationFiscalYearMaturityAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesPurchaseCommitmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Purchase Obligation, Fiscal Year Maturity [Abstract]",
        "terseLabel": "Purchase commitments"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_PvpTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PvpTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance Disclosure [Table]",
        "terseLabel": "Pay vs Performance Disclosure"
       }
      }
     },
     "auth_ref": [
      "r645"
     ]
    },
    "ecd_PvpTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PvpTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance [Table Text Block]",
        "terseLabel": "Pay vs Performance Disclosure, Table"
       }
      }
     },
     "auth_ref": [
      "r645"
     ]
    },
    "srt_RangeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "RangeAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails",
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails",
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Range [Axis]"
       }
      }
     },
     "auth_ref": [
      "r226",
      "r227",
      "r228",
      "r229",
      "r288",
      "r299",
      "r329",
      "r330",
      "r331",
      "r336",
      "r386",
      "r431",
      "r432",
      "r433",
      "r462",
      "r464",
      "r471",
      "r483",
      "r484",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r542",
      "r543",
      "r554",
      "r560",
      "r573",
      "r583",
      "r584",
      "r585",
      "r586",
      "r592",
      "r599",
      "r740",
      "r755",
      "r851",
      "r861",
      "r862",
      "r863",
      "r864",
      "r865"
     ]
    },
    "srt_RangeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "RangeMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseObligationsDetails",
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails",
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Range [Domain]"
       }
      }
     },
     "auth_ref": [
      "r226",
      "r227",
      "r228",
      "r229",
      "r288",
      "r299",
      "r329",
      "r330",
      "r331",
      "r336",
      "r386",
      "r431",
      "r432",
      "r433",
      "r462",
      "r464",
      "r471",
      "r483",
      "r484",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r542",
      "r543",
      "r554",
      "r560",
      "r573",
      "r583",
      "r584",
      "r585",
      "r586",
      "r592",
      "r599",
      "r740",
      "r755",
      "r851",
      "r861",
      "r862",
      "r863",
      "r864",
      "r865"
     ]
    },
    "ecd_RecoveryOfErrCompDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "RecoveryOfErrCompDisclosureLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]",
        "terseLabel": "Recovery of Erroneously Awarded Compensation Disclosure"
       }
      }
     },
     "auth_ref": [
      "r613",
      "r623",
      "r633",
      "r665"
     ]
    },
    "tcmd_RentToPurchaseArrangementsRentalPeriod": {
     "xbrltype": "durationItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "RentToPurchaseArrangementsRentalPeriod",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Rental period of rent-to-purchase arrangements.",
        "label": "Rent-to-purchase arrangements, Rental Period",
        "terseLabel": "Rental period of rent-to-purchase arrangements"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_RentalProductServiceMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "RentalProductServiceMember",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information relating to rental product services which generate revenue for the company.",
        "label": "Rental revenue"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RepaymentsOfNotesPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RepaymentsOfNotesPayable",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Repayments of Notes Payable",
        "negatedLabel": "Payments on note payable",
        "documentation": "The cash outflow for a borrowing supported by a written promise to pay an obligation."
       }
      }
     },
     "auth_ref": [
      "r73"
     ]
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ResearchAndDevelopmentExpense",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Research and Development Expense",
        "terseLabel": "Research and development",
        "documentation": "Amount of expense for research and development. Includes, but is not limited to, cost for computer software product to be sold, leased, or otherwise marketed and writeoff of research and development assets acquired in transaction other than business combination or joint venture formation or both. Excludes write-down of intangible asset acquired in business combination or from joint venture formation or both, used in research and development activity."
       }
      }
     },
     "auth_ref": [
      "r337",
      "r544",
      "r552",
      "r866"
     ]
    },
    "us-gaap_ResearchAndDevelopmentExpenseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ResearchAndDevelopmentExpenseMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Research and development expenses",
        "documentation": "Primary financial statement caption in which the reported facts about research and development expense have been included."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_RestatementDateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "RestatementDateAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement Determination Date [Axis]",
        "terseLabel": "Restatement Determination Date:"
       }
      }
     },
     "auth_ref": [
      "r614",
      "r624",
      "r634",
      "r666"
     ]
    },
    "ecd_RestatementDeterminationDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "RestatementDeterminationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement Determination Date",
        "terseLabel": "Restatement Determination Date"
       }
      }
     },
     "auth_ref": [
      "r615",
      "r625",
      "r635",
      "r667"
     ]
    },
    "ecd_RestatementDoesNotRequireRecoveryTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "RestatementDoesNotRequireRecoveryTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement Does Not Require Recovery [Text Block]",
        "terseLabel": "Restatement does not require Recovery"
       }
      }
     },
     "auth_ref": [
      "r622",
      "r632",
      "r642",
      "r674"
     ]
    },
    "us-gaap_RestrictedStockUnitsRSUMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RestrictedStockUnitsRSUMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restricted Stock Units (RSUs) [Member]",
        "terseLabel": "Restricted stock units",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RetainedEarningsAccumulatedDeficit",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retained Earnings (Accumulated Deficit)",
        "terseLabel": "Retained earnings",
        "documentation": "Amount of accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r57",
      "r88",
      "r446",
      "r469",
      "r470",
      "r478",
      "r494",
      "r589"
     ]
    },
    "us-gaap_RetainedEarningsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RetainedEarningsMember",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retained Earnings (Accumulated Deficit).",
        "documentation": "Accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r118",
      "r151",
      "r152",
      "r153",
      "r155",
      "r160",
      "r162",
      "r164",
      "r194",
      "r195",
      "r214",
      "r348",
      "r349",
      "r355",
      "r356",
      "r357",
      "r359",
      "r363",
      "r364",
      "r372",
      "r374",
      "r375",
      "r377",
      "r378",
      "r409",
      "r410",
      "r466",
      "r468",
      "r481",
      "r901"
     ]
    },
    "us-gaap_RetirementPlanNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RetirementPlanNameAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesRetirementPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retirement Plan Name [Axis]",
        "documentation": "Information by name of plan designed to provide retirement benefits. Includes, but is not limited to, legal name of defined benefit and defined contribution plans."
       }
      }
     },
     "auth_ref": [
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r573",
      "r695",
      "r758",
      "r759",
      "r760",
      "r761",
      "r762",
      "r763",
      "r764",
      "r765",
      "r766",
      "r767",
      "r768",
      "r769",
      "r770",
      "r771",
      "r772",
      "r773",
      "r774",
      "r775",
      "r776",
      "r777",
      "r778",
      "r779",
      "r780",
      "r781",
      "r782",
      "r783",
      "r784",
      "r785",
      "r786",
      "r787",
      "r788",
      "r789",
      "r790",
      "r791",
      "r792",
      "r793",
      "r794",
      "r795",
      "r796",
      "r797",
      "r798",
      "r799",
      "r800",
      "r801",
      "r802",
      "r803",
      "r804",
      "r805",
      "r806",
      "r807",
      "r808",
      "r809",
      "r810",
      "r811",
      "r812",
      "r813",
      "r814",
      "r815",
      "r816",
      "r817"
     ]
    },
    "us-gaap_RetirementPlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RetirementPlanNameDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesRetirementPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Defined Contribution Plan Name [Domain] (Deprecated 2017-01-31)",
        "documentation": "Name of plan designed to provide retirement benefits. Includes, but is not limited to, legal name of defined benefit and defined contribution plans."
       }
      }
     },
     "auth_ref": [
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r573",
      "r695",
      "r758",
      "r759",
      "r760",
      "r761",
      "r762",
      "r763",
      "r764",
      "r765",
      "r766",
      "r767",
      "r768",
      "r769",
      "r770",
      "r771",
      "r772",
      "r773",
      "r774",
      "r775",
      "r776",
      "r777",
      "r778",
      "r779",
      "r780",
      "r781",
      "r782",
      "r783",
      "r784",
      "r785",
      "r786",
      "r787",
      "r788",
      "r789",
      "r790",
      "r791",
      "r792",
      "r793",
      "r794",
      "r795",
      "r796",
      "r797",
      "r798",
      "r799",
      "r800",
      "r801",
      "r802",
      "r803",
      "r804",
      "r805",
      "r806",
      "r807",
      "r808",
      "r809",
      "r810",
      "r811",
      "r812",
      "r813",
      "r814",
      "r815",
      "r816",
      "r817"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue from Contract with Customer, Excluding Assessed Tax",
        "terseLabel": "Total revenue",
        "verboseLabel": "Revenue",
        "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise."
       }
      }
     },
     "auth_ref": [
      "r104",
      "r105",
      "r177",
      "r182",
      "r183",
      "r186",
      "r188",
      "r189",
      "r190",
      "r191",
      "r285",
      "r286",
      "r434"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenue"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue from Contract with Customer [Text Block]",
        "terseLabel": "Revenue",
        "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts."
       }
      }
     },
     "auth_ref": [
      "r117",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r287"
     ]
    },
    "us-gaap_RevolvingCreditFacilityMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevolvingCreditFacilityMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revolving credit facility",
        "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLeaseRelatedAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability",
        "terseLabel": "Non-cash right of use assets obtained in exchange for new operating lease obligations",
        "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability."
       }
      }
     },
     "auth_ref": [
      "r418",
      "r588"
     ]
    },
    "ecd_Rule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "Rule10b51ArrAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 10b5-1 Arrangement Adopted [Flag]",
        "terseLabel": "Rule 10b5-1 Arrangement Adopted"
       }
      }
     },
     "auth_ref": [
      "r683"
     ]
    },
    "ecd_Rule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "Rule10b51ArrTrmntdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 10b5-1 Arrangement Terminated [Flag]",
        "terseLabel": "Rule 10b5-1 Arrangement Terminated"
       }
      }
     },
     "auth_ref": [
      "r683"
     ]
    },
    "us-gaap_SaleOfStockNameOfTransactionDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SaleOfStockNameOfTransactionDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sale of Stock [Domain]",
        "documentation": "Sale of the entity's stock, including, but not limited to, initial public offering (IPO) and private placement."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SalesTypeLeaseLeaseIncomeAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SalesTypeLeaseLeaseIncomeAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sales-type Lease, Lease Income [Abstract]",
        "terseLabel": "Revenue from sale type lease"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SalesTypeLeaseLeaseIncomeTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SalesTypeLeaseLeaseIncomeTableTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sales-type Lease, Lease Income [Table Text Block]",
        "terseLabel": "Sales-type lease revenue and the associated cost of goods sold",
        "documentation": "Tabular disclosure of components of income from sales-type lease."
       }
      }
     },
     "auth_ref": [
      "r178",
      "r425"
     ]
    },
    "us-gaap_SalesTypeLeaseRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SalesTypeLeaseRevenue",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sales-type Lease, Revenue",
        "terseLabel": "Sales-type lease revenue",
        "documentation": "Amount of sales-type lease revenue."
       }
      }
     },
     "auth_ref": [
      "r178",
      "r426"
     ]
    },
    "us-gaap_SalesTypeLeaseSellingProfitLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SalesTypeLeaseSellingProfitLoss",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sales-type Lease, Selling Profit (Loss)",
        "totalLabel": "Gross profit",
        "documentation": "Amount of profit (loss) recognized at commencement from sales-type lease."
       }
      }
     },
     "auth_ref": [
      "r178",
      "r426"
     ]
    },
    "tcmd_ScheduleOfAccruedExpensesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "ScheduleOfAccruedExpensesTableTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureAccruedExpensesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the carrying value as of the balance sheet date of accrued expenses excluding accounts payable. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Schedule of Accrued Expenses [Table Text Block]",
        "terseLabel": "Schedule of Accrued Expenses"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]",
        "documentation": "Disclosure of information about security that could potentially dilute basic earnings per share (EPS) in future that was not included in calculation of diluted EPS."
       }
      }
     },
     "auth_ref": [
      "r18"
     ]
    },
    "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerSharTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block]",
        "terseLabel": "Schedule of potentially dilutive securities outstanding",
        "documentation": "Tabular disclosure of 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."
       }
      }
     },
     "auth_ref": [
      "r18"
     ]
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerSharTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]",
        "terseLabel": "Schedule of computation of the basic and diluted net income (loss) per share",
        "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."
       }
      }
     },
     "auth_ref": [
      "r714"
     ]
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table]",
        "documentation": "Disclosure of information about amount recognized for award under share-based payment arrangement. Includes, but is not limited to, amount expensed in statement of income or comprehensive income, amount capitalized in statement of financial position, and corresponding reporting line item in financial statements."
       }
      }
     },
     "auth_ref": [
      "r34"
     ]
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table Text Block]",
        "terseLabel": "Schedule of allocation of total stock-based compensation expense",
        "documentation": "Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement."
       }
      }
     },
     "auth_ref": [
      "r34"
     ]
    },
    "us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureFairValueMeasurementsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]",
        "terseLabel": "Schedule of changes in the earn-out liability",
        "documentation": "Tabular disclosure of assets and liabilities, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, 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)."
       }
      }
     },
     "auth_ref": [
      "r849",
      "r850"
     ]
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Finite-Lived Intangible Assets [Table]",
        "documentation": "Disclosure of information about finite-lived intangible asset. Excludes indefinite-lived intangible asset."
       }
      }
     },
     "auth_ref": [
      "r200",
      "r207",
      "r211",
      "r212",
      "r213",
      "r435",
      "r544",
      "r556"
     ]
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]",
        "terseLabel": "Schedule of finite lived intangible assets",
        "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment."
       }
      }
     },
     "auth_ref": [
      "r556",
      "r733"
     ]
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureInventoriesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Inventory, Current [Table Text Block]",
        "terseLabel": "Schedule of inventories",
        "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process."
       }
      }
     },
     "auth_ref": [
      "r12",
      "r61",
      "r62",
      "r63"
     ]
    },
    "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Maturities of Long-term Debt [Table Text Block]",
        "terseLabel": "Schedule of maturities of the term note payable",
        "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureWarrantyReservesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Product Warranty Liability [Table Text Block]",
        "terseLabel": "Schedule of warranty reserves",
        "documentation": "Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability."
       }
      }
     },
     "auth_ref": [
      "r238"
     ]
    },
    "tcmd_ScheduleOfRevenueFromThirdPartyPayersTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "ScheduleOfRevenueFromThirdPartyPayersTableTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of disaggregation of revenue revenues from third-party payers.",
        "label": "Schedule Of Revenue From Third Party Payers [Table Text Block]",
        "terseLabel": "Summary of revenue by channel"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]",
        "documentation": "Disclosure of information about share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Share-based Compensation, Restricted Stock Units Award Activity [Table Text Block]",
        "terseLabel": "Schedule of stock-settled restricted stock unit activity",
        "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."
       }
      }
     },
     "auth_ref": [
      "r90"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Share-based Compensation, Stock Options, Activity [Table Text Block]",
        "terseLabel": "Schedule of stock option activity",
        "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."
       }
      }
     },
     "auth_ref": [
      "r8",
      "r9",
      "r90"
     ]
    },
    "us-gaap_ScheduleOfStockByClassTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfStockByClassTable",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Stock by Class [Table]",
        "documentation": "Disclosure of information about stock by class. Includes, but is not limited to, common, convertible, and preferred stocks."
       }
      }
     },
     "auth_ref": [
      "r27",
      "r28",
      "r29",
      "r30",
      "r31",
      "r32",
      "r84",
      "r86",
      "r87",
      "r88",
      "r129",
      "r130",
      "r131",
      "r180",
      "r269",
      "r270",
      "r271",
      "r272",
      "r273",
      "r274",
      "r275",
      "r474",
      "r475",
      "r476",
      "r477",
      "r560",
      "r694",
      "r706"
     ]
    },
    "us-gaap_ScheduleOfSubsidiaryOrEquityMethodInvesteeTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfSubsidiaryOrEquityMethodInvesteeTable",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Subsidiary or Equity Method Investee [Table]",
        "documentation": "Disclosure of information about sale of stock made by subsidiary or equity method investee to investor outside consolidated group. Includes, but is not limited to, stock issued in business combination in exchange for share of acquired entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-lived Intangible Assets Amortization Expense [Table Text Block]",
        "terseLabel": "Schedule of future amortization expense",
        "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets."
       }
      }
     },
     "auth_ref": [
      "r556",
      "r735"
     ]
    },
    "us-gaap_SecuredOvernightFinancingRateSofrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SecuredOvernightFinancingRateSofrMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]",
        "terseLabel": "SOFR",
        "documentation": "Interest rate at which bank can borrow U.S. dollar overnight while posting U.S. Treasury bond as collateral."
       }
      }
     },
     "auth_ref": [
      "r847"
     ]
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "Security12bTitle",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(b) Security",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r608"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r610"
     ]
    },
    "us-gaap_SellingAndMarketingExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SellingAndMarketingExpense",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Selling and Marketing Expense",
        "terseLabel": "Sales and marketing",
        "documentation": "The aggregate total amount of expenses directly related to the marketing or selling of products or services."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SellingAndMarketingExpenseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SellingAndMarketingExpenseMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sales and marketing expenses",
        "documentation": "Primary financial statement caption encompassing selling and marketing expense."
       }
      }
     },
     "auth_ref": [
      "r69"
     ]
    },
    "us-gaap_ShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensation",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation",
        "terseLabel": "Stock-based compensation expense",
        "documentation": "Amount of noncash expense for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "us-gaap_ShareBasedCompensationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation [Abstract]",
        "terseLabel": "Stock-based compensation"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Additional General Disclosures [Abstract]",
        "terseLabel": "Stock-based compensation, general disclosures."
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to the automatic annual increase in shares reserved and available for issuance. The automatic increases occur on the first day of the year beginning January 1, 2017.",
        "label": "Share Based Compensation Arrangement By Share Based Payment Award, Automatic Annual Increase In Shares Reserved And Available For Issuance, Number",
        "terseLabel": "Automatic annual increase to the number of shares reserved and available for issuance"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to the automatic annual increase in shares reserved and available for issuance as a percentage to outstanding number of shares. The automatic increases occur on the first day of the year beginning January 1, 2017.",
        "label": "Share Based Compensation Arrangement By Share Based Payment Award, Automatic Annual Increase In Shares Reserved And Available For Issuance, Percentage",
        "terseLabel": "Automatic annual increase to the number of shares reserved and available for issuance as a percentage of outstanding common stock (as a percent)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period",
        "terseLabel": "Vesting period (in years)",
        "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition."
       }
      }
     },
     "auth_ref": [
      "r574"
     ]
    },
    "tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "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 cancelled during the reporting period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Cancellations, Weighted Average Grant Date Fair Value",
        "terseLabel": "Cancelled (in dollars per share)"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were cancelled during the reporting period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Cancelled in Period",
        "negatedLabel": "Cancelled (in shares)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based awards granted",
        "terseLabel": "Granted (in shares)",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r321"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Granted (in dollars per share)",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r321"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number",
        "periodEndLabel": "Restricted stock unit awards outstanding at the end of the period (in shares)",
        "periodStartLabel": "Restricted stock unit awards outstanding at the beginning of the period (in shares)",
        "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."
       }
      }
     },
     "auth_ref": [
      "r318",
      "r319"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]",
        "verboseLabel": "Units Outstanding",
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value",
        "periodEndLabel": "Restricted stock unit awards outstanding at the end of the period (in dollars per share)",
        "periodStartLabel": "Restricted stock unit awards outstanding at the beginning of the period (in dollars per share)",
        "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options."
       }
      }
     },
     "auth_ref": [
      "r318",
      "r319"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]",
        "verboseLabel": "Weighted Average Grant Date Fair Value Per Unit"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period",
        "negatedLabel": "Vested (in shares)",
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r322"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Vested (in dollars per share)",
        "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."
       }
      }
     },
     "auth_ref": [
      "r322"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]",
        "verboseLabel": "Stockholders' Equity",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Additional Shares Authorized",
        "terseLabel": "Increase in number of shares reserved and available for issuance",
        "documentation": "Number of additional shares authorized for issuance under share-based payment arrangement."
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of performance awards under share-based payment arrangement.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Performance Periods",
        "terseLabel": "Number of performance awards under share-based payment arrangement"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized",
        "terseLabel": "Number of shares authorized",
        "documentation": "Number of shares authorized for issuance under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r576"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Additional Disclosures [Abstract]",
        "terseLabel": "Other information"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number",
        "terseLabel": "Options exercisable number of shares exercisable",
        "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."
       }
      }
     },
     "auth_ref": [
      "r312"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price",
        "terseLabel": "Options exercisable, weighted-average exercise price",
        "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."
       }
      }
     },
     "auth_ref": [
      "r312"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value",
        "verboseLabel": "Aggregate Intrinsic Value, Exercised",
        "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."
       }
      }
     },
     "auth_ref": [
      "r325"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Expirations in Period",
        "negatedLabel": "Cancelled/Expired",
        "documentation": "Number of options or other stock instruments for which the right to exercise has lapsed under the terms of the plan agreements."
       }
      }
     },
     "auth_ref": [
      "r317"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value",
        "verboseLabel": "Aggregate Intrinsic Value, Options outstanding",
        "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding."
       }
      }
     },
     "auth_ref": [
      "r33"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number",
        "periodEndLabel": "Outstanding at end of period",
        "periodStartLabel": "Outstanding at beginning of period",
        "documentation": "Number of options outstanding, including both vested and non-vested options."
       }
      }
     },
     "auth_ref": [
      "r310",
      "r311"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding [Roll Forward]",
        "verboseLabel": "Options Outstanding",
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price",
        "periodEndLabel": "Outstanding at end of period",
        "periodStartLabel": "Outstanding at beginning of period",
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan."
       }
      }
     },
     "auth_ref": [
      "r310",
      "r311"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]",
        "terseLabel": "Weighted Average Exercise Price Per Share"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The percent of revenue change and adjusted EBITDA margin to be achieved under performance goals of awards under share based payment arrangement.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Performance Goals, Revenue Change and Adjusted EBITDA Margin",
        "terseLabel": "Performance goals revenue change and adjusted EBITDA margin"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityTables",
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Award Types",
        "terseLabel": "All Award Types",
        "documentation": "Award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price",
        "terseLabel": "Exercised",
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares."
       }
      }
     },
     "auth_ref": [
      "r315"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cancelled",
        "terseLabel": "Cancelled/Expired",
        "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options of the plan that expired."
       }
      }
     },
     "auth_ref": [
      "r317"
     ]
    },
    "us-gaap_ShareBasedCompensationAwardTrancheOneMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationAwardTrancheOneMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tranche one",
        "documentation": "First portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationAwardTrancheThreeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationAwardTrancheThreeMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Tranche Three [Member]",
        "terseLabel": "Tranche three",
        "documentation": "Third portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationAwardTrancheTwoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationAwardTrancheTwoMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tranche two",
        "documentation": "Second portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplier [Axis]",
        "documentation": "Information by supplier."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplier [Domain]",
        "documentation": "Specific identification or general nature of (for example, a construction contractor, a consulting firm) the party from whom the goods or services were or are to be received."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharePrice",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share Price",
        "verboseLabel": "Stock price",
        "documentation": "Price of a single share of a number of saleable stocks of a company."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage",
        "terseLabel": "Award vesting percentage",
        "documentation": "Percentage of vesting of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r818"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value [Abstract]",
        "verboseLabel": "Aggregate Intrinsic Value"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value, Outstanding",
        "terseLabel": "Restricted stock unit awards, Average Intrinsic Value",
        "documentation": "Intrinsic value of outstanding award under share-based payment arrangement. Excludes share and unit options."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period",
        "terseLabel": "Term (in years)",
        "documentation": "Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r575"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value",
        "verboseLabel": "Aggregate Intrinsic Value, Options exercisable",
        "documentation": "Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable."
       }
      }
     },
     "auth_ref": [
      "r33"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term",
        "terseLabel": "Options exercisable, weighted-average remaining contractual life",
        "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."
       }
      }
     },
     "auth_ref": [
      "r33"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term",
        "terseLabel": "Weighted average remaining contractual life (in years)",
        "documentation": "Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r91"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock, Percent",
        "terseLabel": "Purchase price of common stock under plan (as a percent)",
        "documentation": "Purchase price of common stock expressed as a percentage of its fair value."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareholdersEquityAndShareBasedPaymentsTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shareholders' Equity and Share-based Payments [Text Block]",
        "terseLabel": "Stockholders' Equity",
        "documentation": "The entire disclosure for shareholders' equity and share-based payment arrangement. Includes, but is not limited to, disclosure of policy and terms of share-based payment arrangement, deferred compensation arrangement, and employee stock purchase plan (ESPP)."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r89"
     ]
    },
    "us-gaap_SharesIssuedPricePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharesIssuedPricePerShare",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shares Issued, Price Per Share",
        "verboseLabel": "IPO price per share (in dollars per share)",
        "documentation": "Per share or per unit amount of equity securities issued."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharesOutstanding",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shares, Outstanding",
        "periodEndLabel": "Balances at the end (in shares)",
        "periodStartLabel": "Balances at the beginning (in shares)",
        "documentation": "Number of shares issued which are neither cancelled nor held in the treasury."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SignificantAccountingPoliciesTextBlock",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureSummaryOfSignificantAccountingPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Significant Accounting Policies [Text Block]",
        "terseLabel": "Summary of Significant Accounting Policies",
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity."
       }
      }
     },
     "auth_ref": [
      "r78",
      "r146"
     ]
    },
    "us-gaap_StandardProductWarrantyAccrual": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StandardProductWarrantyAccrual",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureWarrantyReservesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Standard Product Warranty Accrual",
        "periodEndLabel": "Ending balance",
        "periodStartLabel": "Beginning balance",
        "documentation": "Amount as of the balance sheet date of the aggregate standard product warranty liability. Does not include the balance for the extended product warranty liability."
       }
      }
     },
     "auth_ref": [
      "r747",
      "r750"
     ]
    },
    "us-gaap_StandardProductWarrantyAccrualPayments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StandardProductWarrantyAccrualPayments",
     "crdr": "debit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureWarrantyReservesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Standard Product Warranty Accrual, Decrease for Payments",
        "negatedLabel": "Processed warranty claims",
        "documentation": "Amount of decrease in the standard product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard product warranty. Excludes extended product warranties."
       }
      }
     },
     "auth_ref": [
      "r748"
     ]
    },
    "us-gaap_StandardProductWarrantyAccrualWarrantiesIssued": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StandardProductWarrantyAccrualWarrantiesIssued",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureWarrantyReservesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Standard Product Warranty Accrual, Increase for Warranties Issued",
        "terseLabel": "Warranty provision",
        "documentation": "Amount of increase in the standard product warranty accrual from warranties issued. Excludes extended product warranties."
       }
      }
     },
     "auth_ref": [
      "r749"
     ]
    },
    "us-gaap_StandardProductWarrantyDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StandardProductWarrantyDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Warranty Reserves"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementEquityComponentsAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Components [Axis]",
        "documentation": "Information by component of equity."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r55",
      "r58",
      "r59",
      "r118",
      "r136",
      "r137",
      "r138",
      "r151",
      "r152",
      "r153",
      "r155",
      "r160",
      "r162",
      "r164",
      "r179",
      "r194",
      "r195",
      "r214",
      "r276",
      "r348",
      "r349",
      "r355",
      "r356",
      "r357",
      "r359",
      "r363",
      "r364",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r406",
      "r409",
      "r410",
      "r427",
      "r452",
      "r466",
      "r467",
      "r468",
      "r481",
      "r531"
     ]
    },
    "us-gaap_StatementLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementLineItems",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityTables",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Line Items]",
        "terseLabel": "Net Income (Loss) Per Share",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r151",
      "r152",
      "r153",
      "r179",
      "r410",
      "r434",
      "r473",
      "r482",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r493",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r506",
      "r507",
      "r508",
      "r509",
      "r510",
      "r512",
      "r514",
      "r515",
      "r517",
      "r518",
      "r519",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r531",
      "r600"
     ]
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfCashFlowsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Statements of Cash Flows"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfFinancialPositionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Balance Sheets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfStockholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Statements of Stockholders' Equity"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementTable",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityTables",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Table]",
        "documentation": "Disclosure of information about statement of comprehensive income, income, other comprehensive income, financial position, cash flows, and shareholders' equity."
       }
      }
     },
     "auth_ref": [
      "r151",
      "r152",
      "r153",
      "r179",
      "r192",
      "r410",
      "r434",
      "r473",
      "r482",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r493",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r506",
      "r507",
      "r508",
      "r509",
      "r510",
      "r512",
      "r514",
      "r515",
      "r517",
      "r518",
      "r519",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r531",
      "r600"
     ]
    },
    "ecd_StkPrcOrTsrEstimationMethodTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "StkPrcOrTsrEstimationMethodTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Price or TSR Estimation Method [Text Block]",
        "terseLabel": "Stock Price or TSR Estimation Method"
       }
      }
     },
     "auth_ref": [
      "r617",
      "r627",
      "r637",
      "r669"
     ]
    },
    "us-gaap_StockAppreciationRightsSARSMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockAppreciationRightsSARSMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Appreciation Rights (SARs) [Member]",
        "terseLabel": "Stock Appreciation Rights (SARs)",
        "documentation": "Right to receive cash or shares equal to appreciation of predetermined number of grantor's shares during predetermined time period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Issued During Period, Shares, Employee Stock Purchase Plans",
        "terseLabel": "Common shares issued for employee stock purchase plan (in shares)",
        "documentation": "Number of shares issued during the period as a result of an employee stock purchase plan."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r54",
      "r55",
      "r88"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesNewIssues": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodSharesNewIssues",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Issued During Period, Shares, New Issues",
        "terseLabel": "Number of shares of common stock sold",
        "verboseLabel": "Sale of common stock from follow-on public offering, net of offering expenses (in shares)",
        "documentation": "Number of new stock issued during the period."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r54",
      "r55",
      "r88",
      "r474",
      "r531",
      "r539"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period",
        "negatedLabel": "Exercised",
        "terseLabel": "Exercise of common stock options and vesting of performance and restricted stock units (in shares)",
        "documentation": "Number of share options (or share units) exercised during the current period."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r54",
      "r55",
      "r88",
      "r315"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodValueEmployeeStockPurchasePlan",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Issued During Period, Value, Employee Stock Purchase Plan",
        "terseLabel": "Common shares issued for employee stock purchase plan",
        "documentation": "Aggregate change in value for stock issued during the period as a result of employee stock purchase plan."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r54",
      "r55",
      "r88"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueNewIssues": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodValueNewIssues",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Issued During Period, Value, New Issues",
        "terseLabel": "Sale of common stock from follow-on public offering, net of offering expenses",
        "documentation": "Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r54",
      "r55",
      "r88",
      "r481",
      "r531",
      "r539",
      "r606"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodValueStockOptionsExercised",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Issued During Period, Value, Stock Options Exercised",
        "terseLabel": "Exercise of common stock options and vesting of performance and restricted stock units",
        "documentation": "Value of stock issued as a result of the exercise of stock options."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r55",
      "r58",
      "r59",
      "r88"
     ]
    },
    "us-gaap_StockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquity",
     "crdr": "credit",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity Attributable to Parent",
        "periodEndLabel": "Balances at the end",
        "periodStartLabel": "Balances at the beginning",
        "totalLabel": "Total stockholders' equity",
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r55",
      "r58",
      "r59",
      "r80",
      "r495",
      "r511",
      "r532",
      "r533",
      "r589",
      "r607",
      "r708",
      "r721",
      "r852",
      "r901"
     ]
    },
    "us-gaap_StockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquityAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity Attributable to Parent [Abstract]",
        "terseLabel": "Stockholders' equity:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockholdersEquityNoteAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquityNoteAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SubsidiarySaleOfStockAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SubsidiarySaleOfStockAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityEmployeeStockPurchasePlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sale of Stock [Axis]",
        "documentation": "Information by type of sale of the entity's stock."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SubsidiarySaleOfStockLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SubsidiarySaleOfStockLineItems",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNatureOfBusinessAndOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsidiary, Sale of Stock",
        "verboseLabel": "Nature of Business and Operations",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SupplementalCashFlowInformationAbstract",
     "presentation": [
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental Cash Flow Information [Abstract]",
        "terseLabel": "Supplemental cash flow disclosure"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SupplierConcentrationRiskMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SupplierConcentrationRiskMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vendor",
        "documentation": "Reflects the percentage that purchases in the period from one or more significant suppliers is to cost of goods or services, as defined by the entity, such as total cost of sales or services, product line cost of sales or services, segment cost of sales or services. Risk is the materially adverse effects of loss of a material supplier or a supplier of critically needed goods or services."
       }
      }
     },
     "auth_ref": [
      "r79"
     ]
    },
    "ecd_TabularListTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TabularListTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tabular List [Table Text Block]",
        "terseLabel": "Tabular List, Table"
       }
      }
     },
     "auth_ref": [
      "r663"
     ]
    },
    "tcmd_TermLoanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "TermLoanMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails",
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementMaturitiesOfDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to term loan.",
        "label": "Term Loan"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_TimeBasedRestrictedStockUnitsRsusMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "TimeBasedRestrictedStockUnitsRsusMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails",
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time.",
        "label": "Time-Based Restricted Stock Units"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_TotalShareholderRtnAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TotalShareholderRtnAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Shareholder Return Amount",
        "terseLabel": "Total Shareholder Return Amount"
       }
      }
     },
     "auth_ref": [
      "r655"
     ]
    },
    "ecd_TotalShareholderRtnVsPeerGroupTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TotalShareholderRtnVsPeerGroupTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Shareholder Return Vs Peer Group [Text Block]",
        "terseLabel": "Total Shareholder Return Vs Peer Group"
       }
      }
     },
     "auth_ref": [
      "r662"
     ]
    },
    "us-gaap_TradeNamesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TradeNamesMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureGoodwillAndIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tradenames",
        "terseLabel": "Tradenames",
        "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof."
       }
      }
     },
     "auth_ref": [
      "r37",
      "r727",
      "r728",
      "r729",
      "r730",
      "r731",
      "r732",
      "r734",
      "r736",
      "r737",
      "r738"
     ]
    },
    "ecd_TradingArrAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TradingArrAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement [Axis]",
        "terseLabel": "Trading Arrangement:"
       }
      }
     },
     "auth_ref": [
      "r682"
     ]
    },
    "ecd_TradingArrByIndTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TradingArrByIndTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangements, by Individual [Table]",
        "terseLabel": "Trading Arrangements, by Individual"
       }
      }
     },
     "auth_ref": [
      "r684"
     ]
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "TradingSymbol",
     "presentation": [
      "http://www.tactilemedical.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_TrdArrAdoptionDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrAdoptionDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Adoption Date",
        "terseLabel": "Adoption Date"
       }
      }
     },
     "auth_ref": [
      "r685"
     ]
    },
    "ecd_TrdArrDuration": {
     "xbrltype": "durationItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrDuration",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Duration",
        "terseLabel": "Arrangement Duration"
       }
      }
     },
     "auth_ref": [
      "r686"
     ]
    },
    "ecd_TrdArrExpirationDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrExpirationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Expiration Date",
        "terseLabel": "Expiration Date"
       }
      }
     },
     "auth_ref": [
      "r686"
     ]
    },
    "ecd_TrdArrIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r684"
     ]
    },
    "ecd_TrdArrIndTitle": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrIndTitle",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement, Individual Title",
        "terseLabel": "Title"
       }
      }
     },
     "auth_ref": [
      "r684"
     ]
    },
    "ecd_TrdArrSecuritiesAggAvailAmt": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrSecuritiesAggAvailAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement, Securities Aggregate Available Amount",
        "terseLabel": "Aggregate Available"
       }
      }
     },
     "auth_ref": [
      "r687"
     ]
    },
    "ecd_TrdArrTerminationDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrTerminationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Termination Date",
        "terseLabel": "Termination Date"
       }
      }
     },
     "auth_ref": [
      "r685"
     ]
    },
    "tcmd_TwoThousandTwentyFivePsuMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "TwoThousandTwentyFivePsuMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to PSUs granted in year 2025.",
        "label": "Two Thousand Twenty Five Psu [Member]",
        "terseLabel": "2025 PSUs"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_TwoThousandTwentyFourPsuMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "TwoThousandTwentyFourPsuMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to PSUs granted in year 2024.",
        "label": "Two Thousand Twenty Four Psu [Member]",
        "terseLabel": "2024 PSUs"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_TwoThousandTwentySixPsuMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "TwoThousandTwentySixPsuMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to PSUs granted in year 2026.",
        "label": "Two Thousand Twenty Six Psu [Member]",
        "terseLabel": "2026 PSUs"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_TwoThousandTwentyThreePsuMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "TwoThousandTwentyThreePsuMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to PSUs granted in year 2023.",
        "label": "Two Thousand Twenty Three Psu [Member]",
        "terseLabel": "2023 PSUs"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_UndrlygSecurityMktPriceChngPct": {
     "xbrltype": "pureItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "UndrlygSecurityMktPriceChngPct",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Underlying Security Market Price Change, Percent",
        "terseLabel": "Underlying Security Market Price Change"
       }
      }
     },
     "auth_ref": [
      "r681"
     ]
    },
    "us-gaap_UseOfEstimates": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "UseOfEstimates",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Use of Estimates, Policy [Policy Text Block]",
        "terseLabel": "Use of Estimates",
        "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles."
       }
      }
     },
     "auth_ref": [
      "r23",
      "r24",
      "r25",
      "r111",
      "r112",
      "r113",
      "r114"
     ]
    },
    "us-gaap_VariableRateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VariableRateAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Variable Rate [Axis]",
        "documentation": "Information by type of variable rate."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_VariableRateDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VariableRateDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCreditAgreementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Variable Rate [Domain]",
        "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index."
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_VendorOneMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "VendorOneMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the information pertaining to vendor one.",
        "label": "Vendor One"
       }
      }
     },
     "auth_ref": []
    },
    "tcmd_VendorTwoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "VendorTwoMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesMajorVendorsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the information pertaining to vendor two.",
        "label": "Vendor Two"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_VestingAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VestingAxis",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vesting [Axis]",
        "documentation": "Information by vesting schedule of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r818",
      "r819",
      "r820",
      "r821",
      "r822",
      "r823",
      "r824",
      "r825",
      "r826",
      "r827",
      "r828",
      "r829",
      "r830",
      "r831",
      "r832",
      "r833",
      "r834",
      "r835",
      "r836",
      "r837",
      "r838",
      "r839",
      "r840",
      "r841",
      "r842",
      "r843"
     ]
    },
    "us-gaap_VestingDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VestingDomain",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureStockholdersEquityStockOptionsAndRestrictedStockDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vesting [Domain]",
        "documentation": "Vesting schedule of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r818",
      "r819",
      "r820",
      "r821",
      "r822",
      "r823",
      "r824",
      "r825",
      "r826",
      "r827",
      "r828",
      "r829",
      "r830",
      "r831",
      "r832",
      "r833",
      "r834",
      "r835",
      "r836",
      "r837",
      "r838",
      "r839",
      "r840",
      "r841",
      "r842",
      "r843"
     ]
    },
    "tcmd_VeteransAdministrationMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "VeteransAdministrationMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to veterans administration.",
        "label": "Veterans Administration",
        "terseLabel": "Veterans Administration"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year [Member]",
        "terseLabel": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year"
       }
      }
     },
     "auth_ref": [
      "r651"
     ]
    },
    "tcmd_WeaverLawsuitMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "WeaverLawsuitMember",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information relating to Weaver Lawsuit.",
        "label": "Weaver Lawsuit [Member]",
        "terseLabel": "The \"Weaver Lawsuit\""
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareBasicAndDilutedNetIncomeLossPerShareDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Diluted",
        "terseLabel": "Diluted",
        "verboseLabel": "Weighted-average shares used to compute diluted net income (loss) per share",
        "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period."
       }
      }
     },
     "auth_ref": [
      "r167",
      "r172"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "presentation": [
      "http://www.tactilemedical.com/role/DisclosureNetIncomeLossPerShareBasicAndDilutedNetIncomeLossPerShareDetails",
      "http://www.tactilemedical.com/role/StatementCondensedConsolidatedStatementsOfOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Basic",
        "terseLabel": "Basic",
        "verboseLabel": "Weighted-average shares outstanding",
        "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period."
       }
      }
     },
     "auth_ref": [
      "r166",
      "r172"
     ]
    },
    "tcmd_WilliamW.BurkeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tactilemedical.com/20240630",
     "localname": "WilliamW.BurkeMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the member information pertaining to William W. Burke.",
        "label": "William W. Burke [Member]",
        "terseLabel": "William W. Burke"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested [Member]",
        "terseLabel": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested"
       }
      }
     },
     "auth_ref": [
      "r649"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "SubTopic": "230",
   "Topic": "830",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1"
  },
  "r1": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "14",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14"
  },
  "r2": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(f)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15"
  },
  "r3": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r4": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r5": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r6": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "470",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-1"
  },
  "r7": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "SubTopic": "10",
   "Topic": "505",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-2"
  },
  "r8": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r9": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r10": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2A"
  },
  "r11": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22))",
   "SubTopic": "10",
   "Topic": "210",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r12": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483489/210-10-50-1"
  },
  "r13": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-4"
  },
  "r14": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2"
  },
  "r15": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-3"
  },
  "r16": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-4"
  },
  "r17": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-5"
  },
  "r18": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r19": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-16"
  },
  "r20": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18"
  },
  "r21": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-20"
  },
  "r22": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-21"
  },
  "r23": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-4"
  },
  "r24": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-8"
  },
  "r25": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-9"
  },
  "r26": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "360",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482130/360-10-45-4"
  },
  "r27": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481142/505-10-45-2"
  },
  "r28": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-10"
  },
  "r29": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-3"
  },
  "r30": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-4"
  },
  "r31": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-5"
  },
  "r32": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-8"
  },
  "r33": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r34": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r35": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r36": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-3"
  },
  "r37": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "14",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-14"
  },
  "r38": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-20"
  },
  "r39": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "30",
   "Section": "25",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479668/805-30-25-6"
  },
  "r40": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1"
  },
  "r41": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "825",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-20"
  },
  "r42": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "825",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-21"
  },
  "r43": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "470",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477734/942-470-50-3"
  },
  "r44": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(19)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r45": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(19)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r46": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r47": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r48": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r49": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r50": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r51": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r52": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r53": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(26))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r54": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(28))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r55": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(29))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r56": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r57": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r58": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r59": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(31))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r60": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(32))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r61": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r62": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r63": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r64": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r65": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r66": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r67": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r68": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r69": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r70": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r71": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "12",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-12"
  },
  "r72": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13"
  },
  "r73": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15"
  },
  "r74": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24"
  },
  "r75": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25"
  },
  "r76": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25"
  },
  "r77": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r78": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "235",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/235/tableOfContent"
  },
  "r79": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18"
  },
  "r80": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 4.E)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480418/310-10-S99-2"
  },
  "r81": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r82": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "440",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/440/tableOfContent"
  },
  "r83": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "470",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/470/tableOfContent"
  },
  "r84": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480244/480-10-S99-1"
  },
  "r85": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/505/tableOfContent"
  },
  "r86": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-6"
  },
  "r87": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-7"
  },
  "r88": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1"
  },
  "r89": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/718/tableOfContent"
  },
  "r90": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r91": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r92": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "38",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38"
  },
  "r93": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479613/805-30-35-1"
  },
  "r94": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-21"
  },
  "r95": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r96": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(15)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r97": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(15)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r98": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r99": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r100": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r101": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r102": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r103": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r104": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r105": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r106": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r107": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r108": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-7A"
  },
  "r109": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "SubTopic": "20",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482659/740-20-45-2"
  },
  "r110": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1"
  },
  "r111": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1"
  },
  "r112": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1"
  },
  "r113": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-11"
  },
  "r114": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-12"
  },
  "r115": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h))",
   "SubTopic": "10",
   "Topic": "235",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r116": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/275/tableOfContent"
  },
  "r117": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/606/tableOfContent"
  },
  "r118": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6"
  },
  "r119": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-7"
  },
  "r120": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r121": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-5"
  },
  "r122": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r123": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r124": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r125": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r126": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r127": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r128": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r129": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(27)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r130": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(28))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r131": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(29))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r132": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r133": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r134": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A"
  },
  "r135": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B"
  },
  "r136": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4"
  },
  "r137": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5"
  },
  "r138": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6"
  },
  "r139": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r140": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-17"
  },
  "r141": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-2"
  },
  "r142": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24"
  },
  "r143": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25"
  },
  "r144": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2"
  },
  "r145": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-8"
  },
  "r146": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-1"
  },
  "r147": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r148": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r149": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r150": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-04(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-3"
  },
  "r151": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23"
  },
  "r152": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24"
  },
  "r153": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5"
  },
  "r154": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r155": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r156": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11"
  },
  "r157": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11"
  },
  "r158": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-3"
  },
  "r159": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-4"
  },
  "r160": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6"
  },
  "r161": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7"
  },
  "r162": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7"
  },
  "r163": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-8"
  },
  "r164": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-9"
  },
  "r165": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/260/tableOfContent"
  },
  "r166": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-10"
  },
  "r167": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-16"
  },
  "r168": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-2"
  },
  "r169": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "60B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B"
  },
  "r170": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "60B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B"
  },
  "r171": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-7"
  },
  "r172": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r173": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r174": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-2"
  },
  "r175": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-3"
  },
  "r176": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-15"
  },
  "r177": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1"
  },
  "r178": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-6A"
  },
  "r179": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "272",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483014/272-10-45-1"
  },
  "r180": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "272",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482987/272-10-50-1"
  },
  "r181": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r182": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r183": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r184": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r185": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r186": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r187": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r188": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(ee)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r189": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "40",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-40"
  },
  "r190": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41"
  },
  "r191": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "42",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-42"
  },
  "r192": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-13"
  },
  "r193": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3"
  },
  "r194": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r195": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-5"
  },
  "r196": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-14"
  },
  "r197": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/330/tableOfContent"
  },
  "r198": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480265/350-10-S45-1"
  },
  "r199": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482598/350-20-45-1"
  },
  "r200": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1"
  },
  "r201": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-2"
  },
  "r202": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r203": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r204": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r205": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r206": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r207": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r208": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r209": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r210": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r211": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r212": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r213": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-3"
  },
  "r214": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476166/350-60-65-1"
  },
  "r215": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3"
  },
  "r216": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r217": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r218": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r219": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r220": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r221": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r222": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1"
  },
  "r223": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482648/440-10-50-4"
  },
  "r224": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482648/440-10-50-4"
  },
  "r225": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-1"
  },
  "r226": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-4"
  },
  "r227": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9"
  },
  "r228": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1"
  },
  "r229": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1"
  },
  "r230": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-3"
  },
  "r231": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-4"
  },
  "r232": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-4"
  },
  "r233": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-4"
  },
  "r234": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-4"
  },
  "r235": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-4"
  },
  "r236": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-4"
  },
  "r237": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-4"
  },
  "r238": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r239": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r240": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r241": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r242": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r243": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r244": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r245": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r246": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r247": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r248": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r249": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r250": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r251": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r252": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r253": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r254": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r255": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r256": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r257": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C"
  },
  "r258": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C"
  },
  "r259": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C"
  },
  "r260": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D"
  },
  "r261": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D"
  },
  "r262": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r263": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r264": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r265": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r266": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r267": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-4"
  },
  "r268": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-4"
  },
  "r269": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r270": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r271": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r272": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r273": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-14"
  },
  "r274": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18"
  },
  "r275": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-2"
  },
  "r276": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1"
  },
  "r277": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10"
  },
  "r278": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r279": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r280": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r281": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r282": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r283": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13"
  },
  "r284": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-15"
  },
  "r285": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-4"
  },
  "r286": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5"
  },
  "r287": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-9"
  },
  "r288": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r289": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r290": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r291": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)(A)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r292": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)(B)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r293": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)(C)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r294": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r295": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "70",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480794/715-70-50-1"
  },
  "r296": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5"
  },
  "r297": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5"
  },
  "r298": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5"
  },
  "r299": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5"
  },
  "r300": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5"
  },
  "r301": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5"
  },
  "r302": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5"
  },
  "r303": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5"
  },
  "r304": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5"
  },
  "r305": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-1D"
  },
  "r306": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-3"
  },
  "r307": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r308": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r309": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r310": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r311": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r312": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r313": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r314": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r315": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r316": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r317": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r318": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r319": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r320": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r321": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r322": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r323": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r324": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r325": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r326": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r327": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r328": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r329": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r330": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r331": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r332": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(v)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r333": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r334": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r335": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.F)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r336": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "720",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483359/720-20-50-1"
  },
  "r337": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "730",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482916/730-10-50-1"
  },
  "r338": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/740/tableOfContent"
  },
  "r339": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-4"
  },
  "r340": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-6"
  },
  "r341": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-10"
  },
  "r342": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12"
  },
  "r343": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12B"
  },
  "r344": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12C"
  },
  "r345": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-14"
  },
  "r346": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-17"
  },
  "r347": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-21"
  },
  "r348": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8"
  },
  "r349": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8"
  },
  "r350": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.5.Q1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1"
  },
  "r351": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1"
  },
  "r352": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 11.C)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-2"
  },
  "r353": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "270",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477891/740-270-50-1"
  },
  "r354": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482603/740-30-50-2"
  },
  "r355": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r356": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r357": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r358": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r359": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r360": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-5"
  },
  "r361": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r362": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-4"
  },
  "r363": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r364": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r365": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-19"
  },
  "r366": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25"
  },
  "r367": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25"
  },
  "r368": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A"
  },
  "r369": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A"
  },
  "r370": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3"
  },
  "r371": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3"
  },
  "r372": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r373": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r374": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r375": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r376": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r377": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(i)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r378": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r379": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r380": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r381": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "54B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482134/820-10-35-54B"
  },
  "r382": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r383": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r384": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r385": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r386": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r387": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r388": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r389": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r390": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r391": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r392": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E"
  },
  "r393": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3"
  },
  "r394": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3"
  },
  "r395": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r396": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r397": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r398": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r399": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r400": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28"
  },
  "r401": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-17"
  },
  "r402": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r403": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r404": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r405": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r406": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481674/830-30-50-1"
  },
  "r407": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2"
  },
  "r408": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1"
  },
  "r409": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8"
  },
  "r410": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "12A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479165/842-20-35-12A"
  },
  "r411": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1"
  },
  "r412": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1"
  },
  "r413": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-2"
  },
  "r414": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-5"
  },
  "r415": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-3"
  },
  "r416": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-3"
  },
  "r417": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r418": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r419": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r420": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r421": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-6"
  },
  "r422": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A"
  },
  "r423": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A"
  },
  "r424": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479016/842-30-45-1"
  },
  "r425": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479773/842-30-50-5"
  },
  "r426": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479773/842-30-50-5"
  },
  "r427": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r428": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r429": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r430": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r431": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r432": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7"
  },
  "r433": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "910",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482546/910-10-50-6"
  },
  "r434": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "924",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 11.L)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479941/924-10-S99-1"
  },
  "r435": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483154/926-20-50-5"
  },
  "r436": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "928",
   "SubTopic": "340",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478859/928-340-50-1"
  },
  "r437": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "940",
   "SubTopic": "820",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478119/940-820-50-1"
  },
  "r438": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r439": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(27))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r440": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1"
  },
  "r441": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478451/942-360-50-1"
  },
  "r442": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r443": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r444": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r445": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r446": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r447": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r448": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r449": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r450": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r451": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r452": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r453": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r454": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r455": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r456": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r457": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r458": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r459": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r460": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r461": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4E"
  },
  "r462": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r463": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r464": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r465": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-9"
  },
  "r466": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r467": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r468": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r469": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r470": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r471": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.W.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479583/944-40-S99-1"
  },
  "r472": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "825",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477351/944-825-50-1B"
  },
  "r473": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r474": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(i)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r475": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(i)(2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r476": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(i)(2)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r477": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(i)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r478": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-11"
  },
  "r479": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-13"
  },
  "r480": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-3"
  },
  "r481": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4"
  },
  "r482": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477796/946-210-45-4"
  },
  "r483": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r484": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r485": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r486": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r487": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r488": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r489": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r490": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r491": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r492": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r493": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(16)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r494": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r495": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r496": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r497": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r498": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r499": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r500": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r501": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r502": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r503": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r504": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r505": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r506": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r507": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r508": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r509": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r510": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2"
  },
  "r511": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2"
  },
  "r512": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-3"
  },
  "r513": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-7"
  },
  "r514": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r515": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r516": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(g)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r517": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r518": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r519": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r520": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r521": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r522": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r523": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r524": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r525": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r526": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r527": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r528": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r529": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r530": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(1)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r531": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r532": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r533": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r534": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r535": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r536": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r537": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r538": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r539": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478448/946-505-50-2"
  },
  "r540": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478785/954-310-50-2"
  },
  "r541": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "440",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478522/954-440-50-1"
  },
  "r542": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "976",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477332/976-310-50-1"
  },
  "r543": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "978",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479230/978-310-50-1"
  },
  "r544": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "985",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2"
  },
  "r545": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(a)",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H"
  },
  "r546": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r547": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r548": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4"
  },
  "r549": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "52",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-52"
  },
  "r550": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r551": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31"
  },
  "r552": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "48",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-48"
  },
  "r553": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "49",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-49"
  },
  "r554": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481933/310-10-55-12A"
  },
  "r555": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482548/350-20-55-24"
  },
  "r556": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "40",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482640/350-30-55-40"
  },
  "r557": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "27",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482395/460-10-55-27"
  },
  "r558": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69B"
  },
  "r559": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69C"
  },
  "r560": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r561": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r562": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r563": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r564": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r565": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r566": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r567": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r568": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r569": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r570": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480482/715-20-55-17"
  },
  "r571": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-11"
  },
  "r572": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-6"
  },
  "r573": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480547/715-80-55-8"
  },
  "r574": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r575": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r576": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r577": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "231",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-231"
  },
  "r578": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4J",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481175/810-10-55-4J"
  },
  "r579": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4K",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481175/810-10-55-4K"
  },
  "r580": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "100",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100"
  },
  "r581": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "100",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100"
  },
  "r582": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "102",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-102"
  },
  "r583": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "103",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-103"
  },
  "r584": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r585": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r586": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r587": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482949/835-30-55-8"
  },
  "r588": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "53",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479589/842-20-55-53"
  },
  "r589": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481372/852-10-55-10"
  },
  "r590": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479401/944-30-55-2"
  },
  "r591": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H"
  },
  "r592": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-29F"
  },
  "r593": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9C",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C"
  },
  "r594": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9C",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C"
  },
  "r595": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9E"
  },
  "r596": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-18"
  },
  "r597": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1"
  },
  "r598": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r599": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477439/946-210-55-1"
  },
  "r600": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477802/946-310-45-1"
  },
  "r601": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r602": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r603": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r604": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r605": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-10"
  },
  "r606": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-11"
  },
  "r607": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-12"
  },
  "r608": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r609": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r610": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r611": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "240",
   "Section": "308",
   "Subsection": "a"
  },
  "r612": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "16",
   "Subsection": "J",
   "Paragraph": "a"
  },
  "r613": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1"
  },
  "r614": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r615": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "A"
  },
  "r616": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "B"
  },
  "r617": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "C"
  },
  "r618": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "D"
  },
  "r619": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "E"
  },
  "r620": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r621": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r622": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "2"
  },
  "r623": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a"
  },
  "r624": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r625": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r626": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r627": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r628": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r629": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r630": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r631": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r632": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "b"
  },
  "r633": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a"
  },
  "r634": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r635": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r636": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r637": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r638": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r639": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r640": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r641": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r642": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "b"
  },
  "r643": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r644": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v"
  },
  "r645": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "1"
  },
  "r646": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "ii"
  },
  "r647": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii"
  },
  "r648": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "B",
   "Clause": "1",
   "Subclause": "ii"
  },
  "r649": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "i"
  },
  "r650": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "ii"
  },
  "r651": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "iii"
  },
  "r652": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "iv"
  },
  "r653": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "v"
  },
  "r654": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "vi"
  },
  "r655": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iv"
  },
  "r656": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "vi"
  },
  "r657": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "3"
  },
  "r658": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "4"
  },
  "r659": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "i"
  },
  "r660": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "ii"
  },
  "r661": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iii"
  },
  "r662": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iv"
  },
  "r663": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6"
  },
  "r664": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6",
   "Subparagraph": "i"
  },
  "r665": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1"
  },
  "r666": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r667": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "A"
  },
  "r668": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "B"
  },
  "r669": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "C"
  },
  "r670": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "D"
  },
  "r671": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "E"
  },
  "r672": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r673": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r674": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "2"
  },
  "r675": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "1"
  },
  "r676": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2"
  },
  "r677": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2",
   "Subparagraph": "ii",
   "Sentence": "A"
  },
  "r678": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2",
   "Subparagraph": "ii",
   "Sentence": "C"
  },
  "r679": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2",
   "Subparagraph": "ii",
   "Sentence": "D"
  },
  "r680": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2",
   "Subparagraph": "ii",
   "Sentence": "E"
  },
  "r681": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2",
   "Subparagraph": "ii",
   "Sentence": "F"
  },
  "r682": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a"
  },
  "r683": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "1"
  },
  "r684": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "A"
  },
  "r685": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "B"
  },
  "r686": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "C"
  },
  "r687": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "D"
  },
  "r688": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "b",
   "Paragraph": "1"
  },
  "r689": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Section": "402",
   "Number": "229",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1"
  },
  "r690": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "A",
   "Number": "229"
  },
  "r691": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "B",
   "Clause": "1",
   "Number": "229"
  },
  "r692": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "B",
   "Clause": "1",
   "Subclause": "i",
   "Number": "229"
  },
  "r693": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r694": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "272",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483014/272-10-45-3"
  },
  "r695": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)(B)",
   "SubTopic": "20",
   "Topic": "715",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r696": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18"
  },
  "r697": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "SubTopic": "825",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477351/944-825-50-1B"
  },
  "r698": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r699": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r700": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r701": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6"
  },
  "r702": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "14",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14"
  },
  "r703": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r704": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r705": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2A"
  },
  "r706": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r707": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(f))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r708": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r709": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-04(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-3"
  },
  "r710": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23"
  },
  "r711": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24"
  },
  "r712": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5"
  },
  "r713": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6"
  },
  "r714": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r715": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1"
  },
  "r716": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r717": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r718": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(ee)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r719": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r720": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-2"
  },
  "r721": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3"
  },
  "r722": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479344/326-20-45-1"
  },
  "r723": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/350-20/tableOfContent"
  },
  "r724": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r725": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r726": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/350-30/tableOfContent"
  },
  "r727": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1"
  },
  "r728": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r729": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r730": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r731": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r732": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r733": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r734": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r735": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r736": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r737": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r738": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r739": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/405-30/tableOfContent"
  },
  "r740": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "410",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481931/410-30-50-10"
  },
  "r741": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/450/tableOfContent"
  },
  "r742": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-1"
  },
  "r743": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-4"
  },
  "r744": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9"
  },
  "r745": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9"
  },
  "r746": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1"
  },
  "r747": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r748": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r749": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r750": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r751": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r752": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r753": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r754": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r755": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r756": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D"
  },
  "r757": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5"
  },
  "r758": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r759": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r760": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(10)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r761": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r762": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r763": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r764": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r765": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r766": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r767": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(8)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r768": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(9)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r769": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r770": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r771": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r772": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r773": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r774": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r775": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r776": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r777": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(8)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r778": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r779": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r780": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r781": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r782": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r783": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)(A)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r784": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)(C)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r785": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r786": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r787": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r788": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r789": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r790": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r791": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r792": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r793": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r794": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r795": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r796": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)(7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r797": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r798": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(j)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r799": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(k)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r800": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(k)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r801": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(k)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r802": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(k)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r803": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(n)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r804": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(q)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r805": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-2"
  },
  "r806": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-3"
  },
  "r807": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-3"
  },
  "r808": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6"
  },
  "r809": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6"
  },
  "r810": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6"
  },
  "r811": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6"
  },
  "r812": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6"
  },
  "r813": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6"
  },
  "r814": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6"
  },
  "r815": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6"
  },
  "r816": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6"
  },
  "r817": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-8"
  },
  "r818": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r819": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r820": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r821": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r822": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r823": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r824": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r825": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r826": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r827": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r828": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r829": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r830": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r831": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r832": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r833": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r834": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r835": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r836": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r837": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r838": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r839": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r840": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r841": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r842": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r843": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(v)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r844": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r845": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-22"
  },
  "r846": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-23"
  },
  "r847": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480682/815-20-25-6A"
  },
  "r848": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r849": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r850": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r851": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r852": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28"
  },
  "r853": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-1A"
  },
  "r854": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2"
  },
  "r855": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1"
  },
  "r856": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-3"
  },
  "r857": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-6"
  },
  "r858": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7"
  },
  "r859": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7"
  },
  "r860": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r861": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r862": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r863": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r864": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r865": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r866": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "912",
   "SubTopic": "730",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479532/912-730-25-1"
  },
  "r867": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r868": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r869": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479432/944-30-50-2B"
  },
  "r870": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3"
  },
  "r871": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B"
  },
  "r872": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B"
  },
  "r873": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4C"
  },
  "r874": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4D"
  },
  "r875": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4G",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4G"
  },
  "r876": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r877": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r878": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r879": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r880": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r881": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r882": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r883": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r884": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r885": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r886": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r887": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r888": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r889": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r890": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r891": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r892": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r893": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r894": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r895": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r896": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r897": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2"
  },
  "r898": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2"
  },
  "r899": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4"
  },
  "r900": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r901": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r902": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r903": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "985",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>79
<FILENAME>0001558370-24-010856-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001558370-24-010856-xbrl.zip
M4$L#!!0    ( -. !5D!;P'@+A(  &R]   1    =&-M9"TR,#(T,#8S,"YX
M<V3M76]SV[C1?]^9YSO@T9NF,Y5ER4DN]ES2D>WDZJD<Z;%UE^NK#D1"$GH4
MJ0*@;?73/POP/PD2)&5=V"G?W#G$8H'%;['8!5; CW]YV3GHB3!./??C8'QV
M/D#$M3R;NIN/ U^LAQ\&?_GT/W_X\7^'PU^O'V;(]BQ_1UR!+$:P(#9ZIF*+
MEMY^CUUT3QBCCH.N&;4W!*'Q^=D/9^=G8S0<?E(LKC&'*IZ+%*_)V3@JN FY
M>>X5^C!Z-YJ<3]ZBBZO)^&IRB1;W$=D]=&Q-#70OW+[BUI;L, +A7'[ULF(.
M_3C8"K&_&HV>GY_/Y)<SCVV@_OG%B+I<8-<B@Y#>H>YO%>2R> 6"1.0O!?KG
M"T4]OKR\'*G2 1*8;8CXBG>$[[%%,N0"6X(Z9$=L:F'GS/)V2J[S]Q<2#5G@
MBB\>V]V2-?8=\7'P+Q\[:AP&" O!Z,H7)$/@NRF29!!L$;>;%NG=*"B,2#D3
M0W'8$QY3KS%?*>JX2/4PYLUMG?S >CSZ]7[VJ,"(B&W!<MPS0PS%(UDL&Y@,
MSR^&%^.HIK!V=OV!"^H0U]]-=%)/SD?D11"7TY5#AI*,,"Q@%O#AY"RN;OF,
MP7PX9#EP8IUMO*=15)H9#)\/F>?H!B\JR9 SLB[5M?<C*$W4K$(G?YTI+0OQ
MHY:^OU"0[VH)SE%)AER"7R):7)2M(/:LI"=0DNV*8*7B78Z@--7G#<9[;9=E
M088K>;&V^@[(D@RIBZG%];2J*$-L>;XK6)E6!(59[F0C[5N%B'+T1B%95*O^
MY.;4/ &'>3L'H&F1S/3<)GM&K#J=3R@3J8598I&T1/4#"@79+E7JBIWHBC)K
M5&OSW@<VC^;4:DA6Y:HE"[/J9=DEVF79><(A]U>EQ+(PJ/#I#PBI%0R[KB>4
M09*?HH_[/7777O %OLFUY4J.XQ(F*Y)__/QP9S*1:MQO*;<<C_N,/().V)C9
M4]>^\;GP=M,7RF^]':9NJ')\@"@(VJQ*U,>HES994Y<J>6!9/#]'0Y0PA']$
M/!$P10%7)-FB@"^*&/\XRK/+->2#BS%W/ZF_02$Y+)YJ&*6%#"N')!458:PL
MWVE>+^E6:;7P8X3:*V )0R>4DW#CN3:L:,2&/[CG4%M.QFOLR$G_N"4D0K))
MA4H<WTD+H[",6<+?,5>49HM"OBA@W./8$,>XE,_7\WWDK-0!M*2F$=E)7623
M!I"W1DD3/<9'8'R#^?:+XSTWACBI:$3X;3N$90M(-=$C7+&RWKE/(*['*.&W
M1&#J%!92#47UNOD6(!OGE\X4%_0FY/.G'ID*9'[R//N9.@[X&G<@MKN10>"4
M<UB72I"J4<.$W+LB<A%7Y?0D?%' N >S%I@+,$W2+'+!OQ(1#MD-R#+)@UA!
M60&>1&Z21RY@A12O/R/@EH"%WDB6:-*C5H7:U+*83^S/+WNYW)1-NQ(JTU1[
M7YQJ(2<4L>HG5RV8OF'&L"L.#R V>RK%J8S,!-0/1: B5BCBU2-5"ZD;!F5B
MNF%$.6KW6/@,>D/ ([PE*U$"7,U:)AP_%"UDP!G%K.%3PEUZD9)_CVT];+W=
MC@KE?\L]%\\5U-T0UX*1G!',R0-QI)L>N U ,:-X11TUTF6X'\_1I!.7&IU(
M6D7853%&TBZ4JZ81"]I&./"")*&3--^KS+$J\[-K YG<I88@,@H6F^M))1NS
M<EPT58YT>\B2(>A:MMCKPRGU0>M''\6KRM,>GY^_?76UD#QDR[UZ5*C' WDB
MKD]*K$"NU#"YQ^.B5Q=RZ"?K*_IR^KG9H&KE5!P?[=)!L:4BX1[K(M9A'DWT
M?["CG\&NB<.=N_;83DD10EN'TKC3"PNN1#/*WDG]*6UJP!"E./:0'7/,ML ,
MZ+9$2 Z-S]RRM6L<P+UK<P"'WF3:Z0WR,8<UC\*S?MMZCDT8__PO'R93TU,;
M#0<C\A?MCF_23?T1!8WUZ%<LQU_E(D?FZVN?4Y=PZ?3F3V#K$ALP!<^IZ#L%
M'"5R$4]EM/MSUEK@76-.87XM4F+G(=.1&(&:%(%2?"1.:4X].%7)1_YNA]D!
MS!_=N'0-9.#@6"J:@QAO 09,1GF%_*-ZM8P07A0A#%DK,YDP1PEW%+'O<6UW
MP-K@9-6,8-69*M:=J?:HU3^3,QS&F=&I<0S7X]%NSZ[!EIP9I\LB3I6[;CUH
ME?FT^E"@DL($T?A<LU3U;GS3?"SX2);XI3A]TD5&+#2>7U ?*08]!E6A%!'!
M6,T\SA>$/6XQ(X402DMDQ$7CSLG$G!";-Y+9GQ"P0XI?#U,%3%\P9;]@QR?W
M!,M_JX4@#Y.>R B3)H-1<D**%4KSZB$Z.G0Z+H2J%TI=3B"2*AP6U(^DT)OH
MKWX3LF50M<3P9Y/0*JQ0C>L%Q%>%8_KJ^ J]"3CW2#8(M/3HZ8E,B+TO(E9,
M?>PQ.BKXTN-EKF#"KG%23 ]DJX!,CU\IG0$VB,T*L.EBLQZMM@&"'J\*2A-B
M%T7$RB.%'K?6$8,>N"I2$W)OB\B5! \];$<?;99D@]6J4PWDVU;GG'WV6)OL
ML7J9__4S_8M[Q?FTL!ZFUTCJGZ\<NJF<B"TXF.!M>A00)^VGVNKQ/Q;_>_Q/
MC_U"7-MC+;#7U3;C_JXI[JH9%+;38WXLY@]$T,!U63C8;8ZZOKX9]Q^:XIXT
MA&1+/?+'6_L-=A;,LPB1]^ZULO9Z#F;T/S2W]M 42K75X]]R%T)]43<BPIC+
MG3DE4PGX3:L;D*][GAQ]#F]N3+?4XWX,[O.]<I5@(C\0+ABU5#HP%#3#W\C&
MK ?%@YL*/4!A@\HT)$V&A;U&M-.(S[N]XQU(4++PF;6%V5;A!;3@8-:#>GN8
M0Q0U%6(>-=;[ JT244HO!BI0F! T9*7TT+3/3Y%YW1;8V%OJ^&#MM#1E>V7'
M\C/!WBSI)4Q2MY3]#IM7]+2$OM>:UEHS!<?9ED-,G\@CL<*?27Y^L1S?)O87
MYNVD.^4'HS1??\;,E?YT&X5ZI:;,NE9P%JIU+=TOE'0,13U#LFLHU3>Y^1OU
MKM?"USB"D:,Y]T5T?\>A1*T:U37I2?T,+^E/0"/(\T5\Q\>AA[L]W/''OU+"
M,+AFC0 OKVV&O& :RB%/E<0-]: WO5.RXC))<\I_]362/00-KD0SW85F!J/.
M+6@])/5// U'G69 :AQR]GB8;Y,IN4;&G")>?H%,/^SU%@=]YDV1P)!O<Z[)
MM\E<-]SGV#1?,/38E%"9 /JA")#F!LT>IL:+2$F2KY;(!-('36)O(6FFQZCV
MPJ+')EMHP 36F (F\25E/13'IR]ER\,D/G<3EO'2M+178FL^^FY\TV"0Z&3E
MJ+RH"\@)RWF? 7>T"D7'2BF2Y@I3P<2L'N^;JD=\$I8F_"]1!/F?E;HV>(W4
MBX=7\OFXCP-.=WM'/CBFOFW58W?R&;]A]$[?/Z#ELY>=$Y%(]A7OW"D%RG8V
M;#9B@)E5X%%XCW&T9W+:RKWH4=3UB(&@0E:_C1M!LA7^9X0=Z.7HM>0&B)O*
MG=>*$TF>OKSH-+([>-54=JA"G!,*/9/\3R.M-'X-I<U-XQ/)?).THI/\QU'N
MR;GP0^9A.O4L'0R!QP1RLZ^;\MR#FQ=IL8;CL_$ !<^TSCQ+?4NJY8:E6/4,
MF@T[6M&#\F?YRAK6DJL7^N0?[5I-GB^LU6I$+O]HUFK5R[:ZIK55Y+_BER*'
M\M-P/!E>U!_QLN=.*X77ON(Y(H[@,9OCQB+_P&:=\7 8R]22HW$I1V/\OET_
MM&_;UIH#FIKJW[R92A8>_*VI%E$%.0+OCL>@9L.I\1=MQK[D:=@C%%&] MI(
M#S7OJM9K/Z(/VI;OZ[:W0)D71EO8/JBK;3U\FUHYY'+-^T>0)'8'EL.51_XR
M)6QR/GY_3W8KP@:JFQ\')B+J.#+\!I9,;B$'RVS\:O25K=X#O1-D)]U0$,=?
M<5C0?"G,3\SS]Q\'ZL'O*PHD X2AE$$D$K$+RF!EI)Z]#%C[++P5LDJRL@2[
M^7H-O-S-0G'DP?]B49O6TLH>=#GJ9FW)6TIZK^(U=?V O*B#/Q"+T"?9JZ^>
M>Z->O!:1?#5I*Z3:>3"Y,3L<(56P6(FH:!7<<@S2DA45E:+F7Y=*8LJ@ZTOR
M(JX=@"Z2MTD%@QJ+B/34>'[UY;R:K\,?ZD2B%#]7H$1=03:$O09(%3U5(9>Z
M(3EX]AIXOST?_Y;]84O6EC2KTDG+ H8PZ"IV5+(37WK7Y(YST#,P"])(X@V)
MY*U+;)!T']">6O7RO57_5G&(7II4>84R<B7X[V4&L_I6^-I)E8J23+,_#9G*
M4Z&-(KT^)"0+?%#/"CS+![U]X<G[_ZVIZ_K8B?"X<P-E"\^3Y+O?TR=,E>1?
M/";U3YK<HKIVH2,GGPIU3-MW&HC R']G-.).G').GQ2$R&.%R>D'U_6++6'+
M+?AQP<]A;J2<CD/L.S?K /Z^37YWHWER<8,?F'\C=+.5K],]$0:3_"=YVGT+
M$7J<OOB[#7_]_IC-4+ $GABATH@D%Z,9R3JY\(6.N7J\$**KI7<GM_"QL_!7
M#K6BH"L6LB[U:>.71+*V <R2X2?B! \#$29@X-63(]E8K2;M]XG5+)4-46U;
MK"VQ?8?,U[J+\0JA6GWRS@1J%=?J3,/Y$4=O]6BK%@0AE?N[!#M@2FY)Y$(H
MPQI"E'ID5%U9&?\&#DRSE",3-QS#I;,3&I9R]007D*LU2=G?1R($+/2Y7_C^
M#,:*9ZUVZ]J=-.80V\.$I4\D?W=I80O 0-9)Z99T%X"D ^:!^SDIZY-W4MK$
M&H<Y5O*'7\LM9>!U,7& F4F8T9 WJ=H5H_X+@546NWQJ[ZA+Y5C**EEL#32=
M!'3!Z!-XN. APSK$\G:HI+";DL2;!;&&I>RIIJ@;>VL/:MMLP3S;M\0CQ-_4
MRNU555)T$HKBNJY^[?H$)D\2WKFSPNYA'>KOM-K7\&DUCDPFH?%!QI7S]<\\
M6-(J_!]#M>X.@>Z%^1EXM(3HEX,&]%U9 T*_]!$[RB,%6, =S85EA<+.QF$W
M'MM[(#7Y*\'V__FP!A,6!LY*^;)&J#9U)PV2KO>/Q/) ^^J)JB/NI*2A&MXX
MX(%8V'D4OJUN$ AB9OU6@I&XLSH\M6V5VHF=^7H-R^*CS)V CR3>N*VD,""(
MP2B?>"M;IVO*)ZZIEQK:3JKEG;N4GC$5T8_.#MG=G&1%--)U5AF_R#QC,H,(
M-O]*A^R\C/2F.X\)^N]@=V<-\/V=8/;%\V.(CV/1U?2,8%G/NC;Q713A;CV_
M]8EV2-I6[JR:!(D:<Y?D@\?\YTY.Y*";RV=/U_OTYR[U/MQZ(6PW\Y*CCV0+
M)U=P9%_SHE?U-2]76=]GU(78-?BMX7++")?WN<4_7!')2>ZUQYCW#%]O,*QT
M\:.%P3P\@LE1\Z?=B*RQPTF#&1:NDKD?=GH0.T\W\$^9^KM@U+7H'K[L9)Y;
M:FR:53OQ:,36Y=C!F*[7CB<#Z45!Z8M%'53[6[(2R>'MC 3GL@^2RY(2-GVA
M?)#>:*Y!W>+LQ!97-MW)S>D@:_.[R'JKT*@O;43?152A!K ,<K <>42_5R\7
MR"U3F?SG)5N-B;3UZW10XJ_D.?4H'_-<^-,*KE'ZZ@GR=R*FMK<']TX]H'<(
M_IO: DG.%H]D=/S>R5&VO-1.I;S:^3I_ "0/N8,;S-*SO4&=SBQ>I;ZRS@2$
MSNU\?8]=&\M8*%Z'%HSL@])2@U"S=F>&QK24/:A5.4IA2:7^\'!_/$R>RFRL
MUZF0'H'&N?DGF0VSPVZ_)3;9X7#3OV@.RTDZ:/VFE#WCPXT#P9G*ZBP3RD#7
M0<GR%W"J](74RX]Q!D>2V52W1@L_Y922?O$<QWN>N]F<J@*$U60=1+!U9F'T
MNXM4KD;X(Z#4<)R$>UHSFOZ@XR3VJK64*>E^\J"-\&SV9BLKRBQD^Y\^!V?F
M,ZR:-K[';)/Q@'_G=H\](#[)V"^?O>76\SDL\LMG^'R0@3U9<+^XRV&B[.#L
M_$8PA#4S_,Q]*@H2:4L[*$4TF8,3"*8N#&?$$NKG6H7?=VFI3COGR_<;RD2*
M\A5AXJVHJ\8CV4B"OSBUPRS&>*_V3EX.K?:U"9/;#@7_]15Y_L=XM85)*7>O
M:\W>'&$'U;[89?DKX5JR90G_$V1[I"^U1,O2=5"ROS$*39+EV;7/W**/KB_N
MH!S?@"?%NV^RH[^1XMJA+>Z@')\=Z &Y/[NFT,\=.1!6D*6<I(/RW&*7$F=V
M]D#\)Z+;Z-.7?U])@AMS@@L7/OT_4$L#!!0    ( -. !5DZ!W)EB1$  /\%
M 0 5    =&-M9"TR,#(T,#8S,%]C86PN>&UL[5W;;N,X$GT?8/]!FWF9!=;Q
M)4XZ#B8]2.?2")"T@URV9Y\:BD0GW)8E+R4E\7[]%BG)EFQ1(B79HN0!!M/=
M"5GDJ5,LL7@I_O['Q]32WA!QL6.?[O7W>WL:L@W'Q/;+Z9[O33K'>W]\_MLO
MO_^]T_GSR_V-9CJ&/T6VIQD$Z1XRM7?LO6J/SFRFV]HM(@1;EO:%8/,%:5J_
MM_]IO[??USJ=STS$%]V%*HZM,5F#_7[TB_-0FF.?:,?=P^Z@-QAJ!R>#_LE@
MI-W=1L5NH6,3G%/.PO;/$_J_9VA- WRV>[KWZGFSDV[W_?U]_^.96/L.>8'*
MO8-N5' O*'GRX>)$Z?>#J&R_^^?MS8/QBJ9Z!]NNI]O&LA85DU:O/QJ-NNRW
M4-3%)RZK?^,8NL<TGMLOC5N"_JL3%>O0'W7Z@\Y!?__#-:-^K74K!SS\%F>4
M7\#^_(NF!8HFCH7NT41C&$^\^0R=[KEX.K.H4/:S5X(FIWN>,34[E*[>T4&/
M=O'7!P\HI[9T[M@FLL$RX"^N8V&3FL(7W:(M/;PBY+E[&FWFZ?XZT3=/-SQL
M@0@3&[JU;SC3+BW6E1+<W3R4Q6_=\60\0X117RDF7@M;!G>NNZ]7EO.^,6RQ
M!BJ!=H%=PW)<GZ!K^PV:< A&[@7R=&Q)8LB65'%GOSJ.^0Z.]LPVKVT8D"_X
MV4)GK@L&7;+S(I(K!G,']%+J7<_]AKRPE7/=,@9%061)K+CS9X9!?&1>?LRH
MW9;5/D]:Q9W^KA.BV][\'KF(O)7N-5=<Q=V&.8*)O;,7@I@[N-4]GV /AMEX
M<H&>O9(H1*57#<J93K''W!N,.?!['LR\8 8&#=\@^#+?(XLZP6 (0HD;K#]C
MBW6L+. *6MZ>,IYL$XHYO@U=6GP%-J>![.;4@%W*1Y9KLV(%W"/X9/JH))VK
M4FIQ/^5(D6DB!D\G1H0P_.NB;1<:C\WA!P?=L$37]:=3-D_L8)A?[>7J)I*V
M$A6 1$!C^%8@J[_/XH]?5Z7'>ALK?@/_#ANA?:I^=A\'A3Y@6F B<_%3[-$F
M1Z-#&MSU>EI'6\B&OR_$:W'Y6MB %K9 847 +,=(-&C1*,\AZ6ID*ISH[C/3
MH^]V7G1]QN+9+K(\-_H)LT:FT? '/P*'' FU]&=D0:2^\LMN7?TZ]PD!_65V
M+RSSX^C@^/!X>'3<.S[JC7K#T?%PI>,Q2SDC20Q@Q5$;H4$7L_<)<:;KZ@M;
M<F1Z[A 3D=.]_I[FN] 99T;;TJT][1WAEU>/_69&, 0&WOQT[Z 6CJ@[I^X>
M_KC\KX_?=(M] +QSF,+-X0/P+]WR$8<[H;K*<IK%W#K;Q;'*6<&@GI%JL*^[
M>X\,!-@@PH,P*6?@9E1I">?2$$.J!RI3'2U&S $+A]IXD990F0LII.Y 9>J@
M[Q2'RR;IUS:+R3@4IA5-XNX#[E48C:!2&%I(Z5!E2N\(FNDX6M^!#\S8>T5$
M9.(D4+,EA!=%&O)_J#+_ 8IOCFT(S)*7Q91EEC]1SNE\$SZ==\29(>+-[R#>
M\\ .Z41P1KT0_U.:5459$G.H2ANADBB;$!F%NV;V2[#V2?LUGCRYP=X'A^[,
M.NWA6QYF$X;WZO86&._EAV'Y].1#M O&G3'G5VT/_871-F&2G<-T^]@482QS
M#BU/TOJB.OW)CUNVL,LV/5?C;L=.GPT+UTNB&PQ'1[V&\54.JMQDN)XO[@6:
M($!@7MN&,T6/^L?"O7 &([]"\^DNB#'D^4AEGF/Q6V[DDUJV/>R*PPN)_:0R
ML;$# 1 %/'B.\?/5L:#?+HT(O#F'X_QJ]6+)[[:"!BG*1=P:\Q U(6R+8<A>
M0%LOJ#:+J;W+Y%!@/M"(7:D[?4YG.&+[4<G"2>P'@'VD$*59!/&WHP00-H'=
M;XZ'Q*A-*=DF7D7A-6$-Y7(ZLYPYBHX*"COCW'IM(KP8V"8LGH3'E85IYY9O
M$]UR()NP:QDB6H2D@C2OEV\AS8(@F[ YF5SFCQ0SS^8ZNU*;""^ 5&YUIB;6
MZ9*$L ?GE$ZB'P+ZP^;R+ %1;I6F'H)C4'*7WU++JDVN?)R<@ZP)\^X;QWYY
M1&0:CR5XE*8459O1''Y2N!6%*!(GUW/0Q/0-+[I&QV86NI4[6/.JM8SE0G#E
M!G,]2YCK,\G\ V(955I&NS34)@3.G+ED_O987KV6D5\,;Q-B:N'=LO6"2<R'
MBG$LO/LD"*P)'OR.A+OV#%/6':J4D@K2*4A-VC=:#%X3-BSH!6G'SF5TM5B;
MZ!3"UH0!>F::..C6G8YA+G&NS["G\P[]<4JWB5D9B'(3JGH(OJ<WXVUD7NK$
MANF""[-&?^JS_98+-,$&YLVH\BNVB?:":.4F5#7=;.;GL\CPW)P:22T<*78T
M1'B*)8M09*0'>1RZJTJX@7]O*<,#+]=9G(/,5 \#T50/RY8T9Z+%VJKI,B@-
M@6\<EV?0*V5JN5,11NGA[;TOR :WPK]XG%I:P<&7JOWD'0EQ*+F3WT["G:Y>
MP-XFDQ3N%6@B<!T^>(_E(/B")@Y-=K=8E[G\\(@.X+"MD_DUZ)+%^U 3U Q=
M>[FV/420FVT-&VFQN1:U/77(3>/K,<K%<E"N*TPIF43]:3@ZKGT>MVV.,Q;8
M<O0D%[#7LXWRE4#O[XC#_^#$2BAH#:)<K+.8AZL)[(7)VZ*!0&!J^!U[K^>^
MZX$RR.+&(;T] ?^9,!JX(9VT) 6M(8_3M."N&MQ-L!::VW4\"1%SX[M8F58P
MG(\H]RO>46!E=>'HHCRW>1_QJ)R")!9WVF+H) FM9S0^(#;W.+/-6YW\1#%0
MO$TM;@65*<XD*F6#2PYD$]PNS? ,JJ.I\2[ "UD.2_N1S75FG1;1+8]3+N2J
M:5*-;% '30=_9DZQC5V/*N<-97.>4RNIC6/01NWQ>%'6BR"5VU"I,N7"V=0A
M'OX?4\9XLIK8@Z;RT8D]]M>RR\I5;@&]%0#>3"Z-"N[AV4YRSI(]E+GE%62Y
M_O44.6T5^P HL_D2>XQ%>.]E6&SOA3:E!6W5DS1Y)1,P?.P]@HTP03ZX@N0/
M8B7O$!!(CR\2>H3M @5_+H)Q^,LKN!5T#V@O)Q-D\-:NMMV)>A*>TGY#2/R&
MP7Z^S)]<>O!SX;O/P&#?LE(TB M(#L<1#.=5;[QUYU6/E:VD6BVCOB8$,,%R
M2\;&P;* @B92DJ!UQG/0-N&8WJK-7]NQK_LR7Q9_TU&D]B[80AE52*Y2U95O
M;$:0@9EBX>\68F1!X!:;YG/,1*3J+MA(83UL(>2M/A\=.VD%?P:O\O"^&'G5
M=L,N"NB@$=<T7G6"V*.UY\Z4!G)97B*]\"[P+X%<+A-"/9X@=M;R2L>$G7T_
M,__C!X\0<-C/KK0+5E!  [D9$CKU6,#Z9&@]!:OPE'*]ZBY80V$]Y"954&$/
M.VVVO'CV5R+86-2)JZ+?ZX$J:G]Y9RLA1K8"0ELXWJ0M</9*UCLK\""/1,TV
M$UY6#2'M(Z7CR75\X=,UT6PX]0D;8=\@(JS--K0!S43K63VE/RU?=6S3);FQ
M?8'=F>/B8/\QP-7GV$]VI5VPDP(:B.Q!]"I&(3\C_'F1>8&FB(@V&T%E^HA,
M0NVES'6D:2=^LYXNDI#09KNI2AV1V? 7.%7XLO!#LNP<8KGUDCKIJ_!LZ!;C
MV2PE1(8AN,JIRFH'/V>QL(GP1>RFM4CJ(S*<32Z4BD]-V,1Z+;$Q3+EC*_[I
M/J0"B6VVETVI)S(?I7//<K08K!&4./"3(D!!&U+VP(^H^IIP?AW&"#M$^.B<
M&: ]@KB/E_(.! D+4-#$2A*<<F"HG#8D4Q_4=D;,0,AD9X@?8+2-)](V(RYA
M)XRFI#I$_(P*KF7UAH"H1UFMEU0"36G]J7TV44@)N<>(5/ ?'%U=85NWC1*S
MFA0!"EJ*LK,:4?4UX:A:.'JN'+)(ZD6O:[B EX07/\)4N>)65TJF@H98T@RX
M+JM"!0E-AVJYYCL+W?-X(O#$ *_X+AB%%/9&7.:/S]:N7=<'Q<",C9WP<Y]L
M  #N&?#B-[KCFG[PCT[K,BY85")^%XQKH[H23O988_1%LUR.6<?<RP]$#.PN
MKQ5FQ5QI]9)*H"\TK>[=M<M@Q)70A(/8Z4,AEJ!:RMW$ZNV:68@KH=B;=1N^
MG7R!7<-R7)\&C(NC@Q<TK;$E>@UY-.P->WVMHRUEP3]BXK3?0H'_J.&R<=2/
M^;>,O?MXD5KV"\,.7-&,%Z_(_.HX)G]G,*VP@L,N3?/)+3UA(,VX.!G"^>Z0
MG_10'?@([K78],)-)C$?2+&'X+;F_ZCUO6/+8GN"R;4S:7]XN.X/(_$:R->6
M#6A!"[6Z2#K^/'0#T]XUY'RGF5>IAA&8T:7XA<KP?.L]FNJ83OK'DRL@2K?^
MC70B#U94<G)(#%6XHB+&>WRT;TH/34AU((?]&[B'QW=DO:%;Q_9>>=^!<D)W
MT*:$5-"$C70YV'3D/+X[E5A1*&L'C2<+>1.V*0J@A99YR\P%I>VJW7"QRRWW
M-,5RKAR_FME0)&Q'[88+?0L7]SGG4?D@:+_I-G(<R]G$0X1C$67%-=HF-@(^
M]P)_O4'RG>ZQ75J7:2.,6<]!^D H.*:1\6 U,@YD:DSH/S40NPR&M=^H;&WP
M5U2\$1PL8[X\$E8M:;V'P]'Q<7.&;BF035B,S/I.+=\H%,C4)2^H[88A [O@
M\Q%;<^?AC8@HB;/T.N?1^CIG*%*+9-:ZLKE^X^,\\SWXC/+U[-&:ON%]UPG1
M;6_..J=;YY;NNGB"D9F-1;!VTFZ/818RJGNXYK*VLA=;&*:<)Z_IJ>5 &32S
M* )(M']72-"..96:3GD!=%MX5)M[^>\1#-/%WF*G+.ETTR*JO#I-); XN!J?
M> @Z=PXEZ5?TP?--3-/<!U^W]&$H7K'13!9'N(434MET@@F^(;K5>TG?(Z"/
M>+,,_;EL9M9K YGR .M;QPJ[3*] T9N\3RY:?\207S )9C0<?:K]L(4T6P*(
MBBTH;?D!N_3;V=ESG.Q*366W!+K</(_UQIK1#)V^ZT7>"@2;G]:#S4BF%@FM
M-=I,#T6DPK-=B3.5&)#9?)4.,I/#4NGEPG1\].6F M0OJ[60\QQPBI]Q#-+'
MG[T0Q)Z"NM4]G[#ORGAR@9X]:9=\O+Z;$S2A+=J 'RV;H4]/T89J==,WCOWR
MB,B4=H1CV,DB-;Z=$-Q10-&&&Z>[G-()"^WW5(A'TG2?]O"!"!)5;WM2;->V
MZQ&?A4[@/^;TDLF4YC;C$LBOTD@6)>$HFI$BCG/IQ.)75.\(M@T\TZUK._N(
M7A%1"C(OS>RZ<52F"9&)E>I&(WA,N)3,O\Q(3"7-=T(R5QK*BMUYJQ+7BO#-
M\.W% <YTBMFK 73U<)%^PP"L06;G(*?FXF'FV J4=(PP2HD1ELUKNLT>JEUV
M '[/^J"1H!.:'MR0H@6M93]J#2&2>; 7>4IX*Y6\TG4LM:;W)6>I-;.2@IX@
MAY_$0JL\MB:LZ'!@Y2[IY-9+:J0/&JG]>%=YMG/@J;ZJP_?F3[8)Q>@',,@-
MQI[\+N#"#V1=>+QAS:"OC4]HT_4N_"#XDB"."40)]"Y\WGT9\>J5[7"*-IE[
M1K^0( 6'NBR%BPW3ZA30!.\OBC;GHH^LF)883*7PBWT[U#67K!N%TG)VV&#X
M^.7.NC7 8OB+HG)2=ME:..B;D&I,%*?H6FA!<3MJ/4)J*)::3$$SDEH!+2PP
MJ</!<'38:[TIB2M"\2NL!:-EB4NN]!6SRN-E*H-U0=&15T_<O%EL<5(N/VAB
ML\Q=_$*R=LF72.F@"7%V)?L +;, &92*+ZS>HS=D^TAVO;3?7S^I'(JJ=?V3
MW19XA 88,P_( N$O]!8=]F[XB0!R:]4P[NBYL/&$Y0M]<"PSV44.CLPZ"HY!
M0;;B0T\>HN0#4O5XV22.<"0)66M8-@G]8#@:UI[;O@"[XM 4=ZMBIY!E)MS]
MTN>0X=<&2S6C_H'D'_6?0\H^+I!24L$1N*K2[,- 63@:<! Q=]\_O7#C:<N!
M(GSDC^<;PY_3_SV#4_[\?U!+ P04    " #3@ 59J.+WN@ U  #G5 , %0
M '1C;60M,C R-# V,S!?9&5F+GAM;.U]67/<.);N^T3<_Y#7\]#=#[(6RXL<
M73V1VMR*D9RZ*;EJYJF"(I%*EIE$%DA*ROKU%R!SX8*5&PYE1U2X)!'+^<Z"
MY>#@X)__];((1D^(1#X.?WES^/;@S0B%+O;\\/&7-TD\V_OTYK_^]7_^XY__
M=V_O?TZGUR,/N\D"A?'()<B)D3=Z]N/YZ!XOETXXND&$^$$P.B6^]XA&H\.#
MMQ_?'KP]'.WM_2MMXM2):!4<CM*VCMX>;CZ<K5O#X>?1I_WW^T<'1\>C=Y^/
M#C\?G8QN;S;%;BAA,U]1+O##[Y_9/P^TMQ'%%T:_O)G'\?+S_O[S\_/;EP<2
MO,7DD58^>+>_*?@F*_GY)?(+I9_?;<H>[O_/S?6=.T<+9\\/H]@)W5TMU@RO
MWN')R<E^^G5;E';OQ=NR>6K>[V<?:='(_QRE75UCUXE3X2@AC(0EV&][FV)[
M[$][AT=[[P[?OD3>AJX* @6?Z%=?4G[+H7_]QVB4R83@ $W1;)2RXW.\6J)?
MWD3^8AFP1M._S0F:_?(F=A?>'I/LP8=W!XS$_[R+J78PM3O#H8="JD3TAP@'
MOL>T9OLUFLPF2T12?D5O1JR_;].K I&QX\9^0$M[ONL$;UV\V&?%]NOUL-\O
MN+L8N]_G./"HO5[\F?CQJBN0O)Y: 7ON1VZ HX2@:A?WSD. #.6FTU[+A']U
M8OKO9'::1'Z(HF@<>CN=.$>QXP>U0>BUW3*@+QA[SW3<IIU=A=1H'WW*MW$4
MH;@I')V66P9#9Q+/C\>/!*6ZW!" J+5NB;YA6N#'/J*6>(X>6@8A;+UM4'BQ
M\.-T0*'RIR--3!<5='%!.[Y&=":9/ 3^8RM64Z>G_L#>.']@\BL*/4PZ!,KM
MI3^04Q3[)%6OV\ )NX,IZ*=/U7UT@EN"7838(KE3U17TU/E$G/XE7:M3\I9T
MH9#:3D.DQMWT W.R3,<%ROPIBF+BN^E*B'[H!JZZN\YA7] &\ IE7VX3XLZI
M"%JPVCH]M0QVBIY0F*"&0,JMM+U^1/$5W6(OT#6.HEM$[N8.06-J^)X?)+'_
MA.Z0NYZ@+U[<(/&0=TGP@ME($J<F,IE=."1D8\*F>M-E9Y<DM<R^2\<GOSI!
M@F[HU)YD<T'$.I\D\;7O//@!U;R&_##K@P.PW&VZ-XZ0^_81/^TCU\LZO H]
M_\GW$B>()F&P*O* U8QX51E?V \I@U+F"-HI\C='I4/<#:'K'\LL0M'">8L2
M@I?L?RD-^RA"L_UU^?UGGYKY7N@0@I\1X?=81E/V$P2$;-MC'>ZM?Z' #C_M
M'1[N':4.BO\L]Z7!;]T1RPD]AWALYDVB&"_&+WYTCA>.3T>HF9,$<60RT&HW
M)A2,KGT4=&/F1 \I/Y-H[]%QEFL%H?VQO[ FHYVJT+7$HFH5E28RF="R^Q<O
M,9V9V;[M(DP6ZZWHM1_%D4BEZJA"SOG%W%/O4UKGM GB)@]HS_,7C @<ON$I
M[+85/XSW:=&M4G$;Z)CH;4][7BI[,XJKM?LC-U/2VO1NJG=-<,J7O05:/+"Q
MP(C88M6."76"P(R\M$*.*,I1/_0S<PN_KXE@)9N:;1XB8N7H=+[]JQ^S#G;5
M1[GZHVPX&]VD'(Q2U^Z&V@"[A88#YK?&I/:XQ?ZR&[;6?_A],_G2A<A90@B=
MEL</=!E-1_I-1X'S@()?WJ@K_'Y8PJQ79;]_T&L/8/B8.C.VZX\U<0+@\DI"
M\.IJ!0;L='1,BJR@6KWI8D:7BH82P284)1'M#Z<;*R?8-+&V*N-1H<"5';S/
M.N2/[O%(GVQ,Z++FES?TIR7Q,5U=KWYY<V!%P3*/K,*2BH6$"E0M9MUBIO[C
M/)[,OD69ZUG+8$IU-.V%4ZNIN0C9+C01#A&]6DB98K%5<"B5&<4_]SGSHLE\
MV?JN0#J'GIR<'!R,]D:[ENDOF\9'M/51UOR(M;^96K<]-#.:S7[10WYF+_2'
MG9G07WY/O8L7=(L?KUC_):/@E*B8@*!,0W-74YYU=[Y>'U?(SG_FTEPN4-="
MY3S"_,X:6F)UN2VR1BYUS!1Y5.VLSL)@O3N5#IQH<_;,T4EE>>$@+:UA 7&>
M#*X>BPL*,?*+-IU]='B-543TIO,:5.<G(SZU[=M"1.*<5M#?=AI!?_G]EF O
M<>,)N4/DR7<11_5%Q2K:("O8+QQVQ+$F(.+JN+2L#!B_=%U-UV MUNB^-QT7
MT\M46TEG[]J]M<4[%X4.7=,)U)M;CJL&PI)](5IW^RV,ELA-XQ&%"BXLRT<F
M*]U$P57,Q1K]]ZKA H(W*BXE%,9B)CL!92=D.$Q/]S46-+PZZD6-J)8%]"52
MI&L;;EDA6F'IUE8X"N9C#5KL+73XQ.<7.T*B[9I+\A"A/Q.&X(G^<T^[DAD*
MO[381,3E86"5&HBPO G>%@U%R7RL24G_9B(B/6\@4I*M&LGXV2&>PC0*9<3.
MV7(I&V; @D,J45]C0ISP,0NT.%WMRMPZ*_:WE/ =]:''HHB^.@N%!770E=CX
M.NJLL0-9H!FX>])[-_02UH)Y=X31^O3I>[Y#5G=.@#1<9Z+RTBE%6,,&XAT5
M3 Z3V3T58,1\^CB4CP7*BF(>:%5M8WY5R0:;$F5EJA6@*%BC%O56;>O2#YW0
M]9W@*HQBDEYZE%B6H+10IR3E+6!-N3]#9.<S\L/'R8Q#9,0&PHC_26I_;78A
MY&K;G32U:;56X.Z([]WVA6CSEM\V2JMC1!8TO=V%;^[J2L8)20VA5BOJP,$M
M'0"D=4RQMV>B>@+!!A3U;G=2"'G;4Y)N>\+U8W3M/Z'*9='357J]+3VPDT_"
MNBW()F:3-F#Q:4>?<F]LV$H=?HG::6%6K2%FW(AF&Y.I/LB\D=< 9WD.7:-O
M9/J&K4CF&^-VX/',8!BHT5)=WG4U'-07/6Y,NX6YWA!L<?ZO!=+J\) E+[AT
MW#1\6C("5 N*8Z6X1:V#DX>"<8IJ FS/U*0\QNK^>S<7'L&%$# !H595_MH/
MT62FK?BBXI(++N(*0.!>LX!J(C4(534C^.6*S2^Y*&6"S2CJW73$$/(&I$-Z
M[S%G4W:F(X@SVW[C1F 5OO9)[4WA<D69WNRKF.+=]R918CS68&XOO<:"Y<C:
MQ'^5R+$Z6O_J$)\E&ILZL>R OEQ,.#SQ"EJ&)1V'JP6UH+4WUDHXBU5]]SZJ
M5HG-CZ9\(JVJ]RW!2T3B%3OYCL>AQ^+(ELQ[>+I2A*1HU!1JBF9=2/Q0QG-I
MU#3G1[LQ7F8BP\;T]6YN6H#R%J@)Q.Z6&(<NI2B[DS_UH^^GJU,4NO.%0V3!
M'ZIJXMVD1D40;-@0)=](*ZH9L*%:L?$&6U]&V(RR_K?>2BB%C;@&!&A&IYC_
M)#5,3,WR?%>A2#G/26KHXVYW7M,3A<RB+,]C4@!2.P(T;^W"*UE>8!8 \A6'
M:),C<'U5+1<(=KJZ2Y;+P$=$%M+8J%&-:-ZZS0Z P1N2-8.HZS3:&H.KS38.
MN&Q+<[B1U'51]1^QV9 -_"#KNO"M#E#%Y,+L$$PR\/ +"_5=7!P$4.D0("IN
M +8]LU7R'>O1T;NAB0C/&Y",8+MN(+5!:)D! .774GE-16]?O=5*#4"5Q0K<
MA]HJSE/N&=F3V2XIKN DB%N.>\8B+&D+T6]^/)^B('O28.XO[[$D*5*-%O2X
MH&ZCR6F42CRX-E6]GEX)8&Q.LFJ0;_<NJO='$F7O%5QB\A4]CUT7)^FK!;<$
MA_1'-[M-)[NK:M*&^"ZK:2LV[M70MB>SL9<I&_>,5U94?,]%4+CQ7=&:DL%J
MTOJ_"VJ&I7!'18#![CDSBACMLB/F70GQ$6RQC#T<\C/E?!D5EA9/DKD,Q)(>
M^S\_SI-8.#HNDP;$U9>_;9W^-1HG\1P3_R_D?6-Q0KEG4=CB,3I=7;P@XOH1
MNB6^BT2Q/!WVI.&S:K6O8<FGBJ-&#H9&/74A'UE?[3D:NU!191Z'QO@MNB1;
M9)@Z&41C1O6^U<TB]M,LPNQ&+7^?6RW$W=[QB_4$)$L"4"!!N)<5EN7"DI9N
MLC^5LA5K=-[K-I1'[68/*J42P/WJ>^=E;932.'A^8<7-8EYQ$$ U[E)7BQN
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
MQO]R^FB%VTI<O'^I-#I?$0,!)B#U2$TAG#J1[Z8X:D]]I5:@^+=4^FDVJ95
M#E'4YRQC._(:"[O8#A3?6.OB+L+LQ>52QC")YXR.B!W&)L(1UJQJ_^99ZV33
M#!0P<_P-^8]SJCOC[(KCUX0Q9#++7K5CCJ'8"=EQ;#JB"$S1L W;HVX=_<V;
MI"'<80@\/X3D09B)7-R*[;&W(Z&+ 2O%#B3P.GVJ<HX#RK0HRSKVIB 1:0#V
MNWH!V/D^_S9:]_J#A6+7H3/C%,OQAL/-(^0JLOEUAA*LK0G'_K!:HDLCW62E
M+( (;B.-J^9VK$!Z!7(I!C]_.CYY_PY&6'>[LN+"M"\^2N6"912F\X4TSIM3
MSO8R4TL#BT%W%0SV!3#V/#_K_M;QO:OPS%GZL1/(LUC*Z]A>"AH+1H''OI"F
M*&87.[W-^E8J'5%A*/$GVF(1 ;$OCY^!^\,(W+\*78*<")VC[/]7874W-,5!
M<(G)LT,\@1"-6X$R &H?LIG! ^;P$&]P*\98+0AE$5%34XLV6X4'352:WB>
M_J4V!57#F=3WHO"/)(I3=\X]%JR.=AGP\SGI4V9,4MJC*<HRB:'UQ;M;1%%Z
M4^3BQTQXPN5E3[U#61&UH%.]\0R8IJ;47T51@KSSA%!;RDA.GZC,([MX0<3U
M(R2:XVNT R58N*VIPPS],/0@&VI;4 1I0U#BD;O3!"G\8:A"JLQ?T7/Z1;Q?
MTZH+)=2Y8]//(1Z&C#,UK2GD2F4H,=-=F_7@Q)PJY\5B&> 5RN:GV_6C$[>!
M(UI5UFP+2D1TQZ8NX< P=")392&,6F.!K#4H@=1=#PXR'@#3C"%'8;<@1M,0
M[4[C4W9!-U4<J4]9-PW@R;O#@X-WH[W1KL4T(J4:8#+Z>];P/WY&FH@=.TQY
M6"YLV5,"Q3)#BR0ID6]_6.*[7?*/RYVN*L])IBAV4$*/#;G*M^J[Z0I0W I7
M?RN^U=8Y\%.)&G95B#XY.CH^>5]./FPYR,:*8G&Y8E_7V%OWQ'?3.%(ZS7ZC
M8HFF=]\400?2.E".V;HTHU+"$QD[NKJT<4_5/J6<VW^42/)R:U>%(DHM+=U>
MW]"&U\OE&KK!FF&R<$(W(RHEY0[%=,W+)5 LMKHM03E.-9-B7;3 -JH_PX>&
M$3YTY\Z1EP1H,MMZ0;)S4<$T$J1DI)EXUF>F?]%))'6FL(2+T3U%>TK+?!>)
MN[O^H-B[IOYTQPAH0\$6J?IT?NS&_M/&?Z*O2_4;AA(?8:HT]1$/3#MX<UZV
M6FU358Q[@1(9T8[>&,.'XGG=/ I]NGD\./1VM\K/67!UH.V%/3XX/#@L>V&S
M#MB%OTT7(R?T<L^OC/Z^[L:*3W8GU^0A\CW?(:L)R7S%-RB>8^\J?**R14CJ
MM#5MQ<8PL:7LSDDI97HJNSLH+@_,VUM/A 7K%F,%,+[O2&+^A,GLGCATU'$9
M27(?G49%0&Y;I8(6)*:![56+KN@6/ 9X([%=<7+QVI?PU>U$ZO+,?8?B$]-7
MRL(%D!V0KAQ>EYANT9XGX6WR$/CN9#9#+,Y [-:2EP>SF35BMP8P^TK/-6VE
MFTI1R;++2@N28$>@M^P8JG_K5491BHS57 T&&C29TI?1?4NR6QRR1&N2\F <
M0.:R$X."**Z41)E\U@7 >%;J"62- I@$;@EV$?+2!'Q,8]CQTA5CK!,4IVF!
M@ SJ0[DI8BX_ Y#]Y"?,,@)/49!F";_'.A(SJ@GEDH>^K(S@#< ()[-<RA0#
MXRO5@W*/HQVC*X&#XFS^@K'W[ ?LI9CR*R3&KN;W55?SIOD1;7^TZV"4]0#$
MSWS).(FN_2=4X8&>BUG=@+6$OKNSE/51J\2_+*T!U<.L*[QJ\EX!4/MCJH \
MJ7M240>04UE#+S5D!<>CW+JTBG[5#\<G[P]A^9';E" 7K'VA9@^MLOE>GK2+
M4PZ*4UE++ZN/RQ:PV!>$9'@_7=TX?V!R%CB1+..J40N69CF1[ZO1+&<$'+2D
M=\0J;T$8MP)H9JRAZYKRYD/_064.?G[M5P^ SL"W=-X*!2'T@C)09MZ:6EWP
M(!21=>6-.T<SIII/J$*G\(A7607*P5$#*>@!!>:).TNBF"[X"'N+AKV6H%BX
MBDI#.3MJP8B$&.$(*W/WXC":^TL]@7%K0#E?:E%H7)SV!;=^!QUY]\B=ASC
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
M<Y_4$5.U'A2G8%M2JB+LP_WQ*O,1ZFV>?F8D_)F1,%MI'].5-I#(MEH9"3<
M?J;/:R$C82_I\P:>Y/'(C*6])'EL[ R]5@4(JFI9#A'4 U7PZ,LFRJ&&"::8
M)G31X#!W? J.G5I,9LQ!+PL5U*AHV] :RUH.#]AYVY@@9S*[=D)/(+)\ 2B[
MZQJBR</H96,V]CP_:W0RF_DNNENR%$E>[NPKOQV3E8:R53;@NA(3,"O@&>X%
M71S&*+WB.LG&;'R1GEX:C&V2-J!LK5L:YB1(!W!V?>/\@<FOE%I,ZIQ;OS<]
MMT[[&ZT[M'IF32ECM^Y)>GP^]:/OLN-J46$;MZ[*I)RN3BE[YPN'?)?=3516
M@W5&+1=/X0*6$IG]8;9*XX9"^;4Y934 ;AM3Q93+K@SPU<JNX&-Y?W)\\OX3
M#"=1E_+D@H8@XBB>S+Y@[$5ICCGI(:BHL&W7DZF^%N7&QP1!-!4M5 1D26O
M.DMH-,E!BKVJ E'%ZDAKP)[59'$X4EBO3$Z%P?S#P?')QP/P,UA-V7&AVA?G
M7;)<!CXB%<KEB?%5M<#.9/)H'B4N  *;.P2QAQ:\=*ZEN_&O.$2+98!7"-TA
M\N2[*+HG3ABQ33T.3U<;4)()KVFCL%Y"TI\3F^(>GCILZ)>.V$T;!33YMF,N
M372FS)R?.L-I%/Q" )H>=;.<$)S'9,[622B)B:L4@;(":$?9MP<S%9R]'(AE
MO=X_8Y4 <D6@G 5W(H <3F#'897%Q[4B;$-6P6[$AAJ*?.]C,TY#8$A?$Z8T
MD]GZ^(AG2)4B4 Q)3QQ\#-"-9)? 6I3R75X%2G1%0Y,I8!K V>\4Q3Y)+9A%
ME]<X_?UH>OJ[ZW'$NK1Z_GO.&(Q2CA#_(6&<9C3)3H'E52Q88E&"7YV%S"\N
M*@SKW%='+'DK%*&R/TQ6*9-NP<3% 6W(Y0HGEPN<+71+DBGNXHZ.3TX^PMKV
M-I<6%V)WCPE53/_XX/![D3;Q'LJH.I0-KDH5<^\&&: #MF 4C.F[I8-JEV72
M@-U=ESG44D(OR>0WT)AY :B+S(E &&L(2D&15;Z0(@%?LT:A; L[T1=M+@Q@
MDW*-'ME;:.G[._2/=8)4/YDG5Z)]CG*=VDVNA*.H0*$TKY*@<$]7RZZI,F0)
MJ<Z<2'2UEU<(UB9$SO+-S3,>#CLW^HJ4"&,ZY$4!;#/D*L3G>P\!-MUSO[C.
M?G=\\O$]C*U$,XEP876U??@-.4^(7#O/4>+ST]B(B]G>#NBHT78KP$5@?Y5?
M&315JWI9!<NW7950BJDK^;,%R+.3[$8:H<NL<[IQ=&/%.0JW.)3%LYZ8U'B
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
M/S^_C2EVG[U$YOFN$[QU\6(_E=IN2$G37\UQ0,469<"VB:G9E]N$N'/*@-O
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
M-,M'!8_@,,0!Z$,8T4_[[2--)7+U07 40L5JJ0C=WX^N '(&>A^^.',"'!&
MQ__@=_0IA%-RG'_RMK(%0@Z&^>'E++<_?AL&20%D3*B4H(8E 'Q\1;B*_21E
M3H>?5.YSMCQ=)/LX3P\72:#6"P,6III8"=36&BT*DA)9\*32J1;JBG!DDJ2D
M($" PO$5[<'[?!6PY2Y<AR) ;UAOE/"8RF40HJU6"F DA=)RHU(EAD3:6&@K
MUGD0L$G)BO] 1.6M4E8I+*;>:)AOZXP$$$E?E)RH=*6 7)5_((!#;F($7U-P
M<,'^>),^)"^Q2<HFI -ZTF=<JB4U&*Z.=/DP:@@@P(H$*&C:P=?%F_0V39[#
MV%?O=53@#NB)0@2ILG1@<35&RHQ1;:J=3(F'ICNW299[T?\;[K2[9#FP WHC
M95^J-2U(7)V1L&+4&(%#&-+1=[W@X\Y3ZBDTI/TSTD6^A,7J'K_QV_&O\7N#
M][XT7T( YN@?%A*,HMM-$JLC9GT0G ^L8K7\R-W?C_ZAY0ST/C8'(QP.X?QQ
M3_U]RM3M[;>/#V$NS<[H@^!\<!6KY0?O_G[T#RYGH/?!^6\D69.WW[YZ_)J4
M6,?\Z@^I!YF:]X?M8R*3I/,[SO>6,EE^[-:/1__2DM'[GUG $ &$8=.7G_T-
MXX@JHN!R,%S;EK'<M>\F#)J-]YGH*4 )2DI8I"CXQ3Y-:9R+ZS?06G;2V,OR
MJ_3@F%M[O0CMS;T<%FE[KV-&M<$O<$B%1 06QOU)3B'9-'RF[[W<*QC3A/7E
MX+@W)CH1NE<E,EBT.Q(U,^K+D0H'DC&\4I5P[MS3"R^G3TEZT-XF-Z"P;]Y[
M#/<OWRL0Q/OW#@^Z*_B4E+#'5X'[K1=%[_99&--,O=ITH#!50,IP6P5:($@J
M(.%!I0(<E)2PQU>!RRU-G]@"]F.:O.2;BV2[\V*U-U! 8ZJ$5H"V:DA!D51$
MPXM*54H4(G!(@83@-C8TBDRJT@9"=1H2=CL^HP&!Y3)Z+"@]!D#B?7PV\!8R
M0A+_U_N-QR;B9I_#@TDX2*OWV%HDU&.+A3B=PXL& ^L(8V1)>9#AF(2CKHA
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
M!8,93I,PVXZ?-0"0 F8]#B21@(Q7P3(IP+'B86:.BZ+W!=].K*4_IDF6L7W
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
MV)21$T%S&-,%_:3X:JXMR2!/S 8*E6_4##@N+<(28?2K;P/!D66WQY'M>MM
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
M(R]MEHTJZC[Y7IH>X(#YS*\\O:S\X=%C%'Q*L@UE!\W R\LP1KO0%/WL1_L
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
M+._I./"*,'#TGC[#Q+BF6?8#*7'(NJJ<LJ83NY;/NFO3-SR60KJQY]*T-I:
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
M>ETD,=\I[[T(Z@-_J_MRQ^;D!"L23)_X6>H5C&?CM*H93)43,3>@XHPT6"/
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
MNK),&1">9:JYF6R9!6GR,U>37]$:- T0L<NR$Y8Y@?]%'L=$[!/3CZ_?A6R
M+3W05/,J1@F+]1S&P'S]#D8!B/@ 1LO19&L5Y,E'ICG5 &@O7H:)*F/="<N=
M08Y%^K!Y<4BCZ]=W=/^L[3>L ,3JKZ9CN^ZE)H-"[)NF9F>RR0K:Y/HU*:BC
M=48;(&2/:2<L=9($7<:;?[]F?_K+OY3_PO[GT<OH7_Y_4$L#!!0    ( -.
M!5E/WU/SITD  !E'!0 5    =&-M9"TR,#(T,#8S,%]P<F4N>&UL[7U9<^,X
MEN[[C;C_03?O0W<_9*9LRXLJNGK":XUC[)3'=E9-WY<*FH0D=E&DFXO3KE]_
M 2X2-VPD0$"08GJR;!/;.=]WL!X<_/T_WE?>Z V$D1OX/W\Z^#+^- *^'3BN
MO_CY4Q+//Y]]^H]__.__]??_\_GS_UP\WHV<P$Y6P(]'=@BL&#BC'VZ\'#T'
MKZ^6/[H'8>AZWN@B=)T%&(T.QE].OXR_'(P^?_Y'6L2%%<$L@3]*RSK\<E!\
MN,Q+"_R?1F=?C[\>C@\GHZ.?#@]^.IR.'NZ+9/>P87.7DLYS_3]^0O^\P-I&
M4#X_^OG3,HY??_KZ]<>/'U_>7T+O2Q N8.;QT=<BX:<LY4_OD5M)_>.H2'OP
M]7_N[Y[L)5A9GUT_BBW?WN1"Q;3E.YA.IU_3KS!IY/X4I?GO MN*4XU3VS7"
MID"_?2Z2?49_^GQP^/GHX,M[Y!3M:C2+(CS\ZA+2K\7^Q_\:C3)%AX$''L%\
ME,KX4_SQ"G[^%+FK5P\5FOYM&8+YSY]B>^5\1G"-3X[&J(G_]RJG4O'?<]^Y
M]F,W_KCUYT&X2A7T:83*__YX6VE4;-FQZX$5<%S;\K[8P>HK2O:5K<2O(AK_
M%$.^HCHN ]\!/J0U_"$*/-=!/+ZP/*2FIR4 <<0G U?!0XOR8(4PW1+$J,W2
MY*K5,H"0ZZ_1;#Y[!6'*%*' X6H86+BG.+#_6 :> WO\ZW\GT#1D"=E6T\#"
M7EK1\L8+?D@#LE2!$-&NW,CV@B@)P3<KAO_.YA=)Y/H@BF!/UI67S(4*%@&.
M]2[4T4,((JBM+KTYN2C!S7U*5BLK_(#$=1<^G&38%AP_;#M(X #B+QX@_+8+
M.JN>M73!0MWZ;U!A0=BCY94B!#?OER!P?L )(R3B+<357[@O'CB/(NY!D[%(
MP<V' (8)<*[?7U$OT;G)C6($-_,W*PPAW3X>H?6$;]W;V2Q'<$/A(L!QX_-%
M"-(.MFL[&\6(;F:P6KEQ.@1 EL&Q 9DP7#3U,#)BD:([NIY3 '))@AO["&#O
MDX"N+5QG%]ZOPLK L_7>IU\M%2%Z]@#BK/B[((H>0/BTA#/JSK.&]L($-_G&
M<L-?+2\!]\!"OZ>VT+7)F,*4S!B&F3D,,8-XMN!0*F(>410TW&RB7],9"I8[
ML^C7?$QADF<9_=J,*TWNC*-?FS&%#3?[Z-E\>L'29R+]),"7)V=6TJ^UM4(&
MF +T:R^IQ"$F _U:3RQRR,V;*Q!;KB=G#V==MKQ)0,_FMY4TW#2@9^-92I8[
M$>@I *XTR5.!GJW&%B=W,M"SU;C2Y#;Z'G4/;@S-:S:_ B^"A<"6/MP<YPYV
MWV#VXKD+(=UIEYH&%O81>.C<(>MG8(H[UWIQO10%R<*SU#R<,K[[#DR&UKW
M61^\R-, N;J!.5#]G@_X_B+_%O4V<U'5#Z>6>^M?0?@K\)T@E$B"UEJ&$_(A
M">UE5?_R9"55-IS(CR!VL]GY@V?Y\J3%U#.D72\L[R$,; "0LY74OAQ3D_3E
M?/J7U.<+-@_-.=.1M*>DW-4,(^;L-9TE0.7#>6H<NG;J*P _R!&77IUTL:]A
M <$'R+X4O8< J^U2DYP-GIZ"U$N1=PC5>U7>+&F((RGDUV%#"E^Y7@+YVYJF
M[WY)[WJ'4,0Y[*X=U!CW#3P!.U]D7;_;7N( YR8,5JAG2S+7E]G\V@I]U)/+
MU)&H)@VQ-8@JGR5QL3[YZ*D/OCJ&$'#]Q_]TX=P;]G]21"34TD%(U)X(-BCU
M((Z _641O'T%MI/Z;*,?4@VDTM_ZD0M[^^?00A.4<[3=L\"= #>*2R4CE5!J
M^VO)@^P._B%O,"I"H(-Q63/@/8;+!^"L_^K&J*[I]/AP/!Y/QZ//HZ*P\H^6
M[XRRDD?EHI$DA2Q>8%=J\I!/>1 R@.  -P,!_K ! ?[R^V7P!L+S%SBA@ HH
M2O*L%^#]_*GE^U?9[2GT\0Q+;&E.^?/O)T=GQV>3D[/QV<GA^&0R/3FJ-; ,
M_GE8;2QD>U$^_+'!AZH7?)[BZVOJI_S97KK>&M\Y[!A;=977%C"V/ @AG7_^
M=/!IE$2P+4$ZW5M[0P^A\_].K# &H??Q"%Z#L(T-F)3;B02+$#DHA^I @<.K
M&\ ^Q[FR8I)%5-)M)R!T$7(XCM3! <<;./"@:JE&4D^ZG: P29'C,AD>EVS(
MO(%#][=D]0+"%CSJ2;8+!Z;6Y_H_5J7_1[!P4?/]^)NU:NNEVI)M(PX,$N18
MG*C" BWL0FBIJ=;2NRN7Z$PC_+@,'#PTQ%S;B!2_0#EPIZJ >[;>;QTH=.KR
MB>JF]&B8]-L(%H\H.4QGJF Z=YP0N>%D_X%K2G" A:@E;56F4RC36'MX6,7(
MH9DJAN82_C@+GX,?/@V83<HMAH4B1+&N'"M&)>V#9^%#&+RYV3UZ(C2UY%N,
M#XLD!4@*5O^5MCX$46QY_\]])4X6VA)O,4!T.0IX%.P#(.L^#X&% :3\>;L@
MH+:\4+J"U3Z*UN$]+ ,?OZJL)]DNY3.UO@! P;(^/W_Z.#A\>4;[YRT U)-L
M%P!,K2\ 4+"NS\]5GCY6+X'7HOW*]^U2/;WIA=X5K.$+7ER_VTMTHH793VE+
M5A7E;#(].]$8!68)"C"4K<LODQ!)F6U_(N) !281=G+4GGR[P.&6I !)V:K\
MUH\!DL1] U=6;.5-)VQWM27?1I X)"E 4K8^1[O8X25<#2V"\(.X4[].M8V0
MT 4HCA65K<F?5I;G%3?*L$A44FTC$G0!"B24+;RO5R!<P,[UES#X$2^1AY7E
MXVVC-?4V(L,N2(&0@K5W3J(E\#P:,.5$53&FD^GIF?9X4-M?P*!@-9[/1H+5
M"IWD!/8?J;]A-$MB%)L2S>7QDS%"IFV$B5N> C9E1_.74.#0\FY]![S_%\ ;
M4"W=5H+#($*!AX(E?3XUO'$CV_+^":P0[U2$2[I=J'!)40"C8,U?N-IL&GH#
M_](V+<.DW"Y8>(0H4%&P^*\V,_--8\.EE':;D:&)46"C8,U_#EOII"WUK+;!
MO_)]NS"@-[W0.V89__>O#9GNX!_$N<1SQ:LNJY+H&7\P1I[QZ[+AS^OB1^7R
M1WD%H[R&?E2;6]%+"E\2?5Y8UFM^5<&+H^(O&^+E?_A]W<;9_,;U85M<:"M!
MYB.)\:3GR]K3?+K(E-_X)[>^FJC"S8/Q9'IRH,ZLNF"#+(Y#-*Q_/A1S#N!,
MP[G+U(45(Y4A!F$$TI0*@<YG1DQXU])J"3L#?#C,6<23 /TK'%O1\4?JS*Z
M!RC !;HV#O^#;MR^61Y %\GC2RL,/^!B,KT5AN$%4UZ-><(">9,NW:4VD#YY
M/-+H$=@ JN+%0U=*VP]=6+(81Q9N8;$7C41P9**$(^DEXS<0I3$J;OTT=@R&
M&VU)C>,$LY#86T[;RX4B"N '5 *& ^4D5;4<J'4H$8$]53CL#:KMQ?PA!*^6
M6\0>1&&DXB5<]Y:UB*$"0T[C&-)59NS5K^TE#@M%S"8#,^S-W6I.V(/8\AJP
MU_?'AH&]1/A[-[*!YUD^"!+:K@0MF\;DX&1%)TD-G%@^A,$K".,/% \J#<@!
MEV.O:%*%GUR0LFA)D$Y8MXTJG')+7:M.U?0KE>B5C^YB&<_FWZ,LCC.N4R'E
M,9DP_((+ZF#>0/@2:-/%U*-]0W/) F$AEZ4\*#AV'4//:C*#.LMOX+*70I5=
MH ,+Y')6O?7M(B;(FX':T%]^OT\/0=-X^O5]O<!O7ZDPYS,1_7[""UK3XH84
M-5OF5WG3UZ$WU]TCIG? 9Z@J[7 R/5;HT2"XO^"46M0Z6*-!HZ1(:"<V<1ND
M-:W)]& 7&!O.97N9P4B*7>(##Q6:CFHB-LM44H%( "UA[^&I08*V]Z*A%=I.
M,\C>T)8>73GWG69L=,I^*&MV+>G1U7^KE] 2MDC5TH;-O0N?04MJ](*8R!@6
MZ0WVX7FP/M":C,U[IYI8=Z*P((MWWF&0U4!:? MBP,:)EI1F$H)54 //VHJ'
M6/*7X9JJQ'"#FJ^JP"-#F-)-; -WOO.'1YGY@DUO)D_XQ#70.2Q70.D=(B9^
M--,;S0]&<0WT :N>0Z_?X"&3A)S)3*9TD-G4/7/FP0:3VE""< AKX)XY,REV
MA0]\5#!IS[PD^>; @'V3K)FGJKC)9'JB%T$$[Y,Q*L# 5?!=X"^>0;@J;P3@
M"-.25'>>, +;0@Y680W<)WL( R>QX]\L]/0@-"LT8[<\ZN$L+9NQ7.DDN(%]
M27-I1S_0)V0QEB_<0@O:1<-YC=5C*BI=!],=@VCYC.5--\FE;K&IN4_5JDR>
M::ZQ%&&75M3.FD;7[$K"T\E05<HQ5,JI<11HE5'J_4HU$P\4.]1-@P^@A>%E
MX*-.$O@VG@B$'+H30\32EU=\(R<@W/YGK&HWDS.<TNMW 49$V(>LY:DJ2'&D
M6E)J21%.3-N6OFR""MHEP74@:J[?ED)6$X.*U9*9R00F*4W<]' <-Y/BP7+A
MFO[2>G5C"W<O$I/:3$KP"&N@H] CB"W7!\ZU%?IP>A6=VW:R2E+OJ2LP=VT7
M-\^@9ZRJ\&0RG2I\"5D87SK*;: /45.5S%-2,ZG!**?430TUJQ3:++[C71DS
M:=))ZD$V1'2*7?Z0 K$$,2KA4P582B#SXRZ!S$=_K53XMWU@<PFK4:CB69BV
MU4FGWP\@3)_185J@XC)7S>54EVEIMXMT/40V(T!Z50'9(TOG2;R$/=6?&XLG
M$J6>R6"",(EJQOW*-L%OHRCA(D66P7A"$,24L(35A SX]^@8<QE/"YJL$M:H
M:C<\.><;##F-XDA7>27<=U'+$\9I!B&'J;S@F6"(O-"B Q^(LPM,:K-Y0)]7
MB+RZH@,'Z),*YB=AC6,#XW2B]Q66.B44[U*MOT:S>>[L"+]R[% =LCZUMZEI
M%,Q'I;I4!.1%;L#K!E&VH["IE9Q2Y*UX)MP:J2:JLOEL,ITJ?-"=$8'J.015
M&L)F4;$I?"@.KBB,2U#!WS8PP5^*JPEP @K"-]<&Y^]NW24.ETQ+J!CTOP&-
M2S(=84L/,;)V1U?!RG)]/';-M%H!R(5%*X2, F)Q5'>1ZAZL7D"(Z1\K:72%
MC%'W;7LE-.D$XH6)</V(].7E+<FE:(6$DMH8<+K(B=WI5CGO@#-0< M_Q'EY
M-Q-JA6&G08U3-L()A81AC<L[Z@WX";B!FD#^YVC"]9L;+R^3*(:3L7#]L **
MD K_YSQ;[UAW*>Z2]*8!&=$F%40I0.I59C4NVY=!!!?CN8*PVPRE-&8Q@RZ:
M5(]<-9C_$@91! >V.=;!LI3"++QI@AD84WI]*39_7Y+ZJ!XN?55ATV-8T18S
M@4], R_K/ '/0V.>[]Q;X1^@I K<9!&;04MF\ '<,G_D$U?JW$"5?WX$H+Z7
M4 57<(3T@O3Y0#))B'F,Y F_Q 9>\OD%^%"+'M3!N;-R?1=I,';? )DLE%Q&
MTJ6+S/K=_<'L))VO@C!V_TSQF,WKSP&B1TBMT$=G=VT;2\R9C>*% -$-G)PT
MM,DZ636*&WQ22KW;HS@4<'8">0<7;S0B;%)J287^ZQ6*@%)9H*8S^!;X055Z
M\K0"F]XL1O")*<A1#A=@H.Y<-*1K"+*%8F_7]1.HCHV_R@68!R$H19*[?H<]
M+U2&ZUOA1ZIN%$@([0H'Z7H/#KX DH#L7B*E1K/8.;2B1#D!:M3OK563V_4%
M7#K@]VPQJ2O*.AQ/IJ?UXZSM8Q6;D!)\ %4SXAN(J3.A2IJJ8I!:-8CCUWW$
MHXJ68SXUJ!<H@CT4UR(HV_>XY&8Q@4O*8FMV;%!/0!]>H6HNK,BU2;>..$O1
MDD-<5.@R3Z&KP,"]?R:U7+E>@KS2^S*L7$Y5P=/)]*0>N\Q0CE&5H-^Q 687
MN*ZM]!F:*S>RO2!*L ,83U8M2<(]F/66N.AW9$4-5/.ZPF_ 72RA)9S#9ED+
M\"U!/I>S>>/B3]HI8[H=KC*T8E-O4C2[G_[*,'" PRBEW LSW,#C+&5'F<:E
MCD&&.8WN\>$CEC'<YSOJ=I^O7.=?1GFM2J-.=8@US91W"V_]'8VA(>CD9,F"
M#N,=P$*V82^3=0$O$_,R6+T&/C*;EHN!3'GTAA:/$ %69C&U1;ETGYQX]ZR1
M3F\TF8%I@LLFJ4YW!S'!DXEX$O,8BRV_U#I=9JL'/28"W)[86&0YQ,7Z$*HX
MTJA*W'ISFYC66$#9I<4Z_6WQ?5/MD.PT/2++IE/7>NO;(7HI[PID_[WUFQ/]
MQ\#S;H+PAQ7BPE%QEJ(WXF3P6K?V>PNO[3195)1]75 6 5:;X3,)+V@/]15
M4J -I#!N[&X=JV$)XUXI>?O/<(XPR2YHZU,_BIP[_TJB[#F]YP"S'$E5=&&E
M.Z4KY-R5HIXJ?Y8J(GH$4/N1&X,\&L=#*N<CL(.%GY:(7?4-4OL.T5FE1O6[
M#"5FG,T"7%XE(>P=,DVDT7#+"KM^!Z'M1MC H-SE5!5\H,<YNL11NK=N3'U*
MJ:F8;,02P#Y"07OZ\2I'0OAK3?F7&N8W\"/]@M]/8,B[9QF#/B3$T58]Z22:
M7$=FU3+OJ<6B$$%7<W!>:HK"IQ!,[7KUZ@4?()M7/"2AO80P/'@6;H'2J:P]
M]SKHQ\ [043#Q&JG4[^'+VU/QDX:$G5=22,Z]KNB9C9UZ'*+NJJDX5@IXAS!
M:'8P"B_*Z3_;);[V'5VFZV*.$0XGT].QL11ADKU@B)AS!!)#-'*COK2BY8T7
M_.!Y#672S7L:537*ZE+J,[T6F=U5NB6+FCD":LA#&+RY$)N+C^]0X[=^V\4X
MBF@=2M*RNV!!M3:3$"*W*0_WHH"^A GG)H&6Z(M"L\D3BN""X,?--NOGGX,?
M-J/X,5"QJ4//<X!.%GT;#C.5>?AST*;[=;BM<S@PO;FQ2XV;++O:'6.N$G5*
MO7NFQAJN &R[[:88P)\]D++#=\HA)S&,9LFJ)2N5<*=)X<[Z,_"Z[57>\%*X
M+Z@)^-]+^$>W$1"6-=N>?B3Z=="=?D$FQ&PL-!R12+L+C<1551W!Y;D&@6\T
MH1F'Q@QTW?K%<GVDW9E_Y4:O^5.VLWD6N/D 0S)RICW9\&3KH+F^+EO3C'0^
M6*"M($UF=7>N]>)ZJ09O+#=,3T(W$&%H1\ZTIQV>=ATTU]=3BT([95'G:KO:
M:]WF7K_TUYD9"]C3$4_'GEJ4ZNNE"S'/;3M(($X0&>"^$2)QL&35DHP]6<!"
M*T9-]%VO4OHZD;'IFC*F%OL&,K.^]>_07VM4X<AI-E/Z*J+OZI)"%#7QZIKZ
M0,KP844NUKV4F,=L#G570=_EHXQN1@I[UOLU'0:OUMR[RRA694A>):IQJ6DJ
MY"$$KY;K%%N#>13]<]])X_YERVAFJK$4MJO,ZZP;R>M&N7.IM1K3*< C"@8Y
MF\-53RHOVZ2*6$158Q,]MOMESZ[X-=)W@;<E>P]M;[FW,:U#"683391"^E[L
MV9()6;$*?K ^.NTCY/EVE5,L:I!Z+T<7'A670QZ!E_)]LZG,3"E\$;O*+DZ-
M2+UQ(WERE<X<;3M,*F+".65IF=/>1PDHT6Q^R5*0B4\/87S^6HXU^)RV6PK0
MDG3R?!Y[*D:4>X5&CY]A-)+M-E<T(N[R &?A6G)4T'T"$:J0X%&FXHJ!]5&$
MN[+_G;@A@*J"\L<?Z')OC%YHAW]])3A?L!>@):$D$J3)QIZZDGP<J<;C!ZK
M!L!)7Q![LCPPFW,SD+V$JEJ/)].I!H_&#DO!GLJ2ZD>K9BQN6.4MQ-]?N'#N
M2SPXH.;;LZV;BHP\#V77>^]9W9YW/74E*AIBZX)#*_K=N+[EVY(6')R%:TE;
M00L.$:J0<,M W6A[$X29 A99$(0(:BO,PRED^U$?+3HCC\3=RM22=A)IA!VE
M!:I/\DI%S3SQ$;SFTYG9_%L0X_:D:<GW?./2C&372C6C<645QA&*F)JOJL(3
M.#^JVXKIY.JF(@-O\)45@<+Z05V#XG'D[SX4]Q;^ :K[#7EOM5]V) 54%%7\
MGK%2-2DUL+NB_9I6?94>>N1B;"G?GHK=5&1@\'9VK?=>$N]9UU-7HJ[]:;1;
M@]2!_A_MQ;]9'DBOJD&=NC:<PZ(/<"2H_J&4,HO;6W?ZN'ZWO02%5H0_+"VX
MQGN$\^'K^1Q@=W6&;8269L"[^Z.!RB3L76Z; <C@\YZ>,H?^YLMN>\[5-7X*
M-5Z_"+I;G,LU(&B\KT<!5A'!*7E]]5)E6EZAS%M_'H2K#%%*^%NVW$:PJ(^L
M@IYI47QN<NO#!D [06\1?B-<!:JDTA/['E@VF<$BL8%Q!RM^VB[A">MRJIV@
M UUB V,!YE%[9N$#G$+EOZ0N-UDDL32P4Q%.+'?%<7!1W#J5M0/4$J<7J:<-
MIT.]87#E1K871$D(OEDQ_'<VOT@BUP<1ND>RV0SZ5$&:\&[!P1C^W^CS:%,N
M_"4K&KU.4!0^LGQG5"I>U,4DDA"8F1A'/A5]0MZP)A1U@V\DK++V['A\J/#)
M9VYT*D;+)IN4@/%#F^&%%;D1<NC=%,AA?(=-XTL+1+97*7)X)L_"A>7G@:4W
M[Y>X:=#I<M-F\WS/V/(V+YM05E&"RE9@WRUPHP-"=^&[<T@1/\XO**.GW*!4
MM@NB9\B "P]_1-:G2*WZ#"G,*?<KPC5E1 _TE*Q65O@QFQ,5P=$I'34[I;P.
MU"V5:AEMJAFMZU'P1D=#6-KK&H0,*G:D^O0>6]Q/T'&K[$8I-_/&9M2 1MX2
M!9#!DB=-2RX7I&('):O]8],F:I!?0@XE>T"-]M!,E)2ERM<I7*K6]S*41$*@
MHE3=_N&43^K6X-'PQOE+$#@_7,]+0SFT7V-C,-;CIK$6!:?+[TW1H[QL!2\4
MX"5EMFC.,E2\P\#20IK5\Q6B93_0">W*"PO]=6# V)W'?,G#-O)T"2?-+B$O
M;+0N3<E\NQ;#YC()$9?HTVY:/F$1CVHZWZ@PKQ)GO7R9M;1:9GC6L8KZR6N
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
M+)GU9!4__BTDZBZ_U%-W151*Q<[4\1"Z-JB_?M1V$:LMO<&$X1)9<H=35^J
M+$EE)]$B36 X#_ R"CH6QP&OYD[%0QC8 #@1.GY!%H ND-SZ;NQ:7G7FAN$%
M<WYS:=-/!1+"O6\X=2)PW9-'&'P$7AI0XCE@H0E'3O,(TE?XG!K'4H,VJ>]N
M9G,4YB3WXN?H9BKYS&-//]%S[ISTY(ZG0:ROTOL/W*=2+:\#5IZ3Z'[^M']/
M8M.>;X 61+@M:96WT\GTY$R]R7*^$\$LEY2W.E6O&M;2HYCBT1(X*$PY;ENB
M/;'>)*"A2B $7<I! J\J(L1O0?C'K9\.71&5$)7$QA*"+J54WWW%A("*8Q@:
MC 4?)YLH5_L@MKP&Y&?#S]5([U3PSMV.FW.W]5M!Y^UO!2F<SNT?"ZJ^;$-W
M7Z04H&5?,.#30+QS!K7^*&N_+/O?B1NY*21X1R1,:BTA[XE8DP(\P@N:(WK*
MSL/;A$4_AH <#Y":3TNN\$#+1@RZS*HI@@OW/9][ ?( >,"[QM335.0['D/Y
MZAO8FF!*1Z6V"\PDJ1F7K;(KD9OP&7G0(,)H0,BA)2.$CPB\"F"(T*;&(1DC
M"+&G)^;1$G]>N)@!)\BLDR,JBO8UFZ<WS(D.J8UTVX0F 8LFGFR2FM&_$_J\
MBX][ZU]!>.E9<+C$]_<<)6C)&.']?U^%$':1U*X*"8)MQ*+&!N<L14O.](68
MBS3,6M%I5'F ';"/"??;FF;;<&9&I<4'@"JW%F,+9BEX!5O@1U E#8U@5X:4
M+#L ?6<UF'&/HHAQ5,0]HLPTVU/O $VZ:$!"?">%#,D\ZP(_6KJO;"QIR5'5
MTX$>NXERF<*J!0D.JBI"5X(WX 6OP'D&]M(/O&#Q\>@NEI1^A9)KAUC311,2
M_%>5[&DY8-Y[S<M9BI;,DK#OV5\IA.Y)[=J7(AS'^K=#25KR1P3<W"1BUHY.
M:^'GT'( :B]Y>*HGVT;4F?%I(L\DOA8+8]6;(\93@2Z[&<MBPL![1PDRP))5
M2]8,N=U.UH2@":U>L08*ES:*3Z*6U.B,9),41#FENNJKN8F7:NEV]6JY(3KV
MO%Q:X0(;4J(]<555A\91@D-JR4$!U%"$H$KZC2^VS*93J(<6I$;AUXY0CP#-
M]EQ_<;X*PMC],\4["]QRP,\P4FG;1CD:3[A(QZT8R?<6M>/A+V& O;!&R[;3
MS,)K0.JU-NT(=&[;R2KQX'K4*=L8/Z4P!>TTR7ATLEOC)_Y^)3G33M,))[^H
M(\_66YEJJ$/9>LM>X8#S@O4%-UH\AV[%;1O=>.?[0O4B-334=M!0$/VJZCV"
MZM4@.I!0KO2G8JN.#-SX:IVXLA./);.6=!/:RW76@I%;Z"WSBJZ$:LNZ:W1B
MUD'?(&?3C$P^B#4A4GE1,YO7]8+;G"=F,IT\':3/:7.J3\A-F2O#FP2]G%-6
M4QZ2LOL&/K5(TTDG7#<Y)<\,>K:9M(W3U$ZV,0V5@$[Y(]OR_@DLG*.+@)*W
MC:#=6,6WM]9'=?H]5S\P?[^!]_CY!_#>P'W@Q\L.1P@,A595/]'C92;M6,ND
M-:F'$FHFCWQ:0J;\_",0PM.\K#T]^RI+ZIG%UK 2UHP+']>QM#TS^ZM+ZF[T
MMG#S)DC$S$J+PO;,[*TMJ<\D="(F[N5 K,Q(3+MVJ'T^ARW"<*YO<;O&.BGZ
M$O3$@DYG(](=#,RG6@^MB-J7;'4[*#JR 8-!G]MVF  GUQ]_ .B39@#HO,A1
M4:;2D,]Y8^Y<Z\7UW-@%T642(NI1=E89\JEYFL=)[/@W*PPM/_Y(&VEYZ74L
M=^X")V\C[O(96^XJ[X^A\=0'6 6] 3..M6=Y.@MLQIW$7&U0$7, A482W("U
M[LC<QV0RAQX=Y-3BAB)FZGKKIX] N_'Z18-JY]XV/Z7EV7ZPNXNI10@>7.3F
MK/E0JC>  MU?^[ :.,CZZ26H5NMFSF<(YIU%U2*8#AGW2Y@2S>B>XL2!JBAF
M6G3@R1G-0KZ#K%I$PR%#GP:PA73^'H%GZYT =36A6= RR"9AY:]@_C:+ER#$
MJ@DS?R-GJFKK1(^ >YWF;QWDE.!6I&Y6STR('>!")QKT=N4I[>(,O7%3+&H?
M88'A6X>=F]/FSDU1YJ@H5.G6S5-L^8X5.K55//-+71SY%=CP??"6QK*_]3'M
MS'<K'@//NPG"'S !1LX.)6EI]]QXE^U?E!*T?;R++!:?">29M&2!*"";%.F@
M#$&;@*_IY7U8?]AT8C_5D$WYKW 018^9 US'PU?(GFV\RC'0_XVLE0?K X&!
M<\QDR[SG&:M2^FYPKJ_F+-!E?TUN60PS3M:/_G>(4NW:$+1IFHV4UWZ336K&
M204'KL;W6'VT(OEJJIHNJUTAWP+?[L"N3;:J D^/QZ?UE<L.T(JB#JG^86JF
M6%P#'TL7OZ/,(?'%&/>O2]AB-SY?A"#5+?<FXEES$S$K<K0N4^D>XA5XB9DW
M#'&)%1@Q1!7,YIDJ;RP;;6E_I.&3,4W'IM?2E,FHE$V33RYM-^^J A">(&DF
MU!) /EB:L#**N25X$A\&:4NJ)::,F-# )$BHT^L=C^ M\-Y<?U%M/?'Q!F*>
M+<"4 $T357YA!<*+<8%Y!N'J+K!\_)N4U1359IY-IF?U:^K;@0FK:((VC#VQ
MC@U1&)<L$OZVL4;XR^^/EK\ +4-BY9N62'8=!>F2$8"4,/"Q -1J<K6O6H%$
M5W(+('3;DC=X45"XM][=5;+"XE#YKB<2A+95L:#+HAP-UR>C4?Z^[6A09<%V
M5PHF=K]:H8OZX$<K;AM5<,FTPDC4,HM)2,(IH-K@/N76$Y=8S81:HLF$!AE$
M@G0Z+:YN &R+Y=TDOA-=S^? CMTW\/3#>D4R$)=8##FUQY8 4A/=K@+K!/>%
M%0$JLM5$9H'(()M.0^03L!,XILS>0.BC]Z%O7-_R;;C41S(\!?.0""1C;K,0
M[B.T%O<(I9Q(W%&>LR3FJ>IJ.IE.-;B1U'?&Q2^Q(,<9O8)MHP.>6S^*PP2=
M $)%H& ="=:3 9=\:RA"AKA)$RZ!#8SOWZ;#?-%_$81A\ /M.UNO\$O\P=&W
MX(HPED>]E2#Y34R1D;G*LJ((>-$R\)S+P(^AC*E;B!T". ^[]6D,ZEF:<622
MH0_]'O;"L*KF /.,''/.%_!7Y-/\$+IPDO<*_](V>G'G-Y,YO35@X!-*=X&_
M0.=U:)S'C5^E),81@UE(J7$AU<]M&.8NYF)/$U*0[^T0<X_J?#V_5#.;WR,_
M5!1-:-W-/83@-?O:-EAT**:BN9/Q9'JF@5M)[S%#E"*DOA*CIONHJN;"BMSH
M"4IC.3._O'N%>W";-;MQO!*B $%Q(7!=4OW]$G6+[>\^%- IIO"7P6KEQNE6
M!  /(+01[@L>7V.F\HSEG%B-Y"2<2NG4U%#P(0QL )SH!JH>77BV?!LJC# [
MQF<PED2<(A>[@F-CQ[Z;$/P[ ;[],9L_I-="7?NA=6[%F]U8"O520$$HD_:9
M:_/,#BS:3>KP\$5.>(J"+^KNPMU;<1*FD<2R7KC#W;A#ZMVXSZ---:-@/D(5
M;?N%N=_5N(NU64'_*W,G!Y#M&NS(X%7--AW%2R;H>%'PI0$%E^MT@9H/OB;\
MC&(:AGN_2WBZ8,^('0UT@H2:W]+2$PB"/FL[FPRB;;WA$>>;O5W!=&% WVZ8
M7V(ISAB*3S\O/O()[@=E+DG.M#4,(2-,/B%E%-M$?["2%C8+HL?B[ >NP-8G
M0CR/D/<M5D_6\3.&3#MAFMEM8M[ZC.^+]RIS3TEVM4B-G[H%?"0_']ZEJ*J:
M#_6XU#$\^TC:T,_S4? N^J45AA^NO^#PZ*]F,9=$W%*+<GUL#2>GBBQ9P[,;
M4N RB$COTF)2FTP1=H'[.D=2XC.K'\%X76.-8@)52E&Q237J',HRDT,GMZ3<
M#2J0A.WK[JA]AT"->=R>>#>809%7LN^BB@/YM=,<>NMO?1G)AA/S.W09:?;B
MN8NT'O[7KZ8M@6LWU8TLWQE5*H3?TSI'I4J5'M03E,-\?L]9AHK. 401 *GF
MKT!DAV[*:N*Q/CY'U6R.H-F,U7<3G7"L=!&< FL;5/4A#%Y!&'\\>)8?HP=[
M_YVXKZD3]\<SK)9PL,^04TOL>:%K@M]5\NTC 1*'>,;/D%-+$G2%D(,,% UH
M%4LH@8J"/2 YEE ET7:A2L&BB2J#L#H!N!:4B& ME>$0LD@K,$ 4[JI[$+X&
M(5SY_2>PG/].K# &X:WOQJ[EI4,0WE^'+:>A(/;5 /9 0"JP3\ .?*<#KHV,
MNP8KFP*P._=247U>NF$74.OY=@U3)OFQV^W:!D+7!;GNZQBZ; :$0E<-$UW)
M+8"HG&Y*"[ZM#1*$ME6QH,NB'(W.@>E/)I.IRE=2.J!!E46G.*_MW?(=S5.;
MG$LK!,5MI'616I"KCUZA.S-%S.!,S$([T:E&T G4;([VIDD.W-2,6T0=,O X
M^G ++]5C5LTUS/,06+/YG>4[&)YL$AC,!XJ04CU3.X7XP"Q"SQW'S=HVF\]=
M&SR]HEBU3NE0M;STQ*<V$.HN$DMU#E5S8-/6\UW#=48,TO@ELVPD#J[3LWB.
MH0-;AH%4$J<'J;$T5;Q/3'$!>00><F4ZAWI+4]RYU@NZAX5.S_E=0IKQ&IA<
M0L*L$2,K;46:T-NT8^\E(G_.T0)_9DL4T>@9JU9V#)</4_6]36^?D8YR&SA=
MK7:VC^AMC]G\>P12#3U!5$$6FC)_\,/R'H(H'?'33CARX0KS#G;0&'X)*EU+
M$G;D4).,,I6DK9\+4>@N;-IACI"0E_6R@9HXBE4U%$K]R'W&!7=7W8O?)2X*
MUA+#:XPZ=%AUJ3L1:I=I0@+?K+>@,'K8W&:0U6UUJ6$G*2E,480+BUIV7M3K
M1M1\.\X7$@MZWUML726>Z,0?/M;L)%=(#.G];$/KS58=&/(;0"L4X)S#H=A:
M@"R$3OE<$/=\ V\QN\2ICMH0="^2O"6N$=G0#B *.(%>N<A?&NA"MI9B=IAL
MK-J0^G:##F3+(X+CG(?:$U=5=:+'_6Q)Q"'*+/?1!C7\J&W&S5YBV"T#YQ8N
M&.PE\JZ["4*^^5./$LUFFFC%R'WR0:_CXN^^D_?AZ%6>:'GC!3^ZG!$?\9X1
MERL>V;#FT1Q5O3\65K1J@^TK^NBKA"8D3Q%:]CV]CXI[:\# 0^,V/YUU3UOH
MA2M0;><"M21=;\ZPN4;UT-"NDA(JGC5*;<?B]H3LH!^I_L#ZW"-HTP\E2"U?
M*7ORL:M%JB_R%G .UDF.(<51SIYW/(H9Q$E97^;=!$FO>6"IF*IZ3R?34PUV
M9!7S#JN7ON%TQ=,.<^F&5=KS.6P+AE'="S*=4X(U(_6T6U%$5D;E].S$3">:
M$'U(/2K7<*PL[Y9>O]LP*?&=@4YE[8G'JYR^9^B4P--U]6^M4X^Y7.(17]0A
MN$9]EG3OYYUC#DD+O8_)*?W-F4X<$NV$NG-,HBA"U"$WSJM^JM4Q=ZJ:ZO>J
MVM"+,QV.O2?=KD;;M51!T9:1EW^/U+YWOXLGX34W$CCO"V/W3RMS\G\%?H1;
MV?$64[7',VC7&H1J$'PBWE$+@[R5J4>7=&_]*PA_A7U+$'9QN#GF[7G2^D9Y
MA?O.90 I?>0/&Z8L>G2C/TC/<[0G-K.CX)!5VWOJ#1DN/BZ@#I8K*_R#\"('
M+9NF@#/CQ0 VB\1;!'LA"_$-#EJV[8"=!3D6 C#(KM/+#6AE,)O_$@1.](RV
M7H@/.+0GWA)\&8!IPY=98KU0;;";\IH2(<=VX-NSVR8*.VPX\EZS,-J#280<
M5=&GD^E4 W\67JA8)F1DB76RXZ?D]=5S0=B0@=A-4W)M!\X4E)HX=Y%:*ZR7
M4$D75@2<=+B!JX]O@0]6KU[P < 3"-]<&T3/H>5':%T>^!<?A<2$;KU?H5O"
M%(Z>7X(^M W>PRMK(2EQ_.A7J):$DL")_L1CT)O S@OCDY9MI\U\PL-#M21&
M ,R@^YIG&8L6AH+K^4= @VN=9*?A(FM!IS<]&D/>'>4Y#WP&+1$7NY@CRZIC
MN#6,/7]+$#MG\_Q4H\V>:TFV UTR0#5;99'0P(M]#:7E 4BL!<"%$2)E,8L8
MG24>Y,J='@>P#TEH+ZMN(1W.84]XSV&+:BL)]\>QLJ4LU#Y[\=Q%2JS-7>A[
M*TX00RE"\A11,:[3\61Z>JI#=]+SZ+:W!@P<AYHZN4K K<]XGYPQMY9TZLT&
M%H*QJT,0MW#SUB.M!J]'$+MA&I,6O0O<8=PZY1VW-C6.4)7[(4NZE%=@CN)8
MI4_EN2\)XA/2/,F/B)1%RSZD]Y#$+;&VSB55D_YFK4BGT>V)M828&Z$FR!S2
M;A&\Q&,$7/*JT >3Z8D&MQHX\&$!ER"I_#WB%KI.Q@=_5%N)WS_FR+XE4!+0
MJ.U$]95=I\-F3*^U&91H.\SL!6C) P&]=D\-2'ZJ2,V-28Q.KK/#FQ#I)@2I
MH.%'.1'QNG>_0K>)?JS<829C'QT-LIFAQW+S#BPL[R$,; "S^XLN&Z5G_%?E
M8)VC4J6[M>2$E#N%/#LX@SWLP?3@Z/1045R*((HJ326M/]L3:]G#] >CV<EP
MB#_L.B4*XQ+6\+<-SO"7W^_<.-]NN[2BMF5G>R(M<>7 8 ,@AWR">GTOZ_"5
M (SU@28EU0IL#KQ((%.D4PTU9H7Z&[#@I/;.^A$E;HQ?B;8DTQQ#"ARUU2:K
M?!*F:3H,P[3U)SY#54N'QT>']6=;MZ7;[B@KPVT5&5Y*L_G<M4$(9QM7;@CL
MF.*QU))\.Y C*Q_CO<0J[2 1 @8V[74G^ 3BV$MWRI!2<8:-26X6.3I)*]5[
M24'XB*<XL/]8!AZ4*KK^-QSF/M*_I*Z_</V"XFADA^2<R_&#\?B@OAPOU_67
M459;\>?/:8VC<I5*%^--O7P+8MKJFYP)\NED?')V>G0XF4+MG)V=JEEN/]E+
MX"0>F,VOJP[=&Z?O,@SG7MH,^--L_@CL8.&[?P+G 4#6.NAJ+G&U+J4N+;NA
M#M@WNZ+AU*7M(2;#R33^!% 7+@P&8XM_$TTYVB-//+0F'1EJ@CX5 3QH!*GD
M'TMGO=9MZL[MO@'4IL/QP0E^^4_,H#4T!#W7%@_\,NITQ S;':S ^G'YN[R;
M(?2MA!Q5:8^.Q^.Q>D15=K6\NM(VA 5&$&)'3,RC)55XX6(&G""S3IU!%D?G
MR?) Q!!AJ)1NF] D8-'$DTU2G3!\ AXL;G'N._=6^ = FQYYL$MR-!)*-F,1
M[B2X3M>.'Z':H<J6:-<2O $O>$6Z8,&<(:>QL'>5'1M'1 'ROP ?A)8'13AW
M5J[O1ND=RS? @CU37F/1[RX]]F*Z OS%S&?O*&=X@FO1DE,JUPA#Z%>G7@LC
M(&7?G)A)2TX-@6O+=(9?40;>A\5H(0PM?Y&.&A<?FR3YJQ?G/ZS0*4Z"TZ_1
M>1(OH1Q_;LZOV&C9O1XMF=R!4\S$%*PJ_4[F,5NIG=4!%0!G.K%KG_M^8GEP
M-A2BMPYN_4P_:%X;O@$'36W>+-=# ]%-$-Y&46+Y-MB$WFC;KE7>J"JFD\GT
MI/X>T+;17V.]2G54Z-3OZV4K6<>CD9UD#=K;R$ ZE?H*^Y;.B\X=Q\W4,-0,
M"5^C>8:@2FE27WU7X\^(;M8$?NIR<VF]NG&AB:([@%W 31(G(2@Z L)U*:YR
MS&6E&%4(>NH==Z.V[D(P#-OR93QPVA5-?KJ-+;.YO.HAO]07W@LJJ?>UG:5R
MH2N"T-;BT+61LM"'#CZWASP^MZ.\YO1N[*;N_*.AWK>3LY/I\>%8 ^];ZCP@
MPDT$V#QN>Y9?-<EC/:Y>=L"X90(F547:^U=V\JS5!7^IT.$=,[$*T1[MSMZT
MFB!.10 /&D&J[?:FU0P:@IYKVT#\,NKD?/4KG"(A9R)\_UE*H25B0W>?-'UH
MZQ&;-YS8>5;2: DW3?U8P(;I.65M>*8LA42&9,>]F].A!)T19NJ!1<F\70S
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
MM8RY<Q+G>H\Q[U:?>YZN0-R#?FW&U-8\=JLC3USR#^B?%RL"__C_4$L#!!0
M   ( -. !5D9"S@Z^4X"  )^(P 5    =&-M9"TR,#(T,#8S,'@Q,'$N:'1M
M[+WIEJ+*UB[\_UP%7^WO???:8Y19-(J2M?8Z Q7['K'[PZ )%4% &E&O_D1@
MDYII]IIBEC56K5()HIGSF4W,F!'Q]_]=3 UL#AQ7L\S__INXP_^- 5.Q5,T<
M_???+)\I%O_]?__Y/W__?[$8IO72K0JF6HH_!::'*0Z0/*!B@>:-[[&V9=N2
MB56!XVB&@:4=31V!S2L$?I>\P^\(+!;;5)667/BF9=YO2^P_S&PJ1H]3OQ*_
M2)R,8]0]2=SC#-:H/A1<OUO19$=REMM!W,/*\+L40U)W1"(>IQ\7YX$SUQ2
ME2P9*V;O,3*EDA2>2L:23#(>BY,XB$ET*A6C)"FAI$"2()*;OHT]2"I(+M.]
M]]W82)+L__X8>YY]_^O74'+E.\L9_=H\"/O\8U/84Z;JKF00!'>>I'B: :9
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
M*CY0>K%^'R_;W699&)JQ\=4O27T56R,2Z'K*50I?I1*=Q*RB\Y6L,>\EU%;
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
M!-=R%,:I$%,I,+W^HH)SNC_H)H*V:*Z&=F15U34@)JH'9)P*,8Y9[-=66F:
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
M,UKQ9HM>MX6+K!@_P@)_ZG1$:LKRPE3OEA6V!Y14'M9ZA*XCKTOA/;.+X_6
M=OLS9U&J3F"M_X^],VU2FTG:]??S*XA^YSUG)@)YM"]^9APA0.R[$-L7A9 $
M"&V@A>W7'TET^VD;W(L-M*!S8L;3[B[34E;E55EW967];%=Y0N$:I:.8K.H*
M%?U<UV2.5G69FNC,%-599<(J[_\7/_G:V_X-<>2?Z")4!:TYDY1<%%$X_%9F
M%QN9/-'C?M',;;'A:&'JG3%?FQ$V7HFF'O)$CP<<A?>GI5K)S#L5O[>9;"9%
M-[+BB1Y7\!I!X#;=-D6WX9;JF%-T"]&GGNCQ=CGL2Z66&CVKOHEPTZL.%ODH
M[CG1XZ.IMM+7LVC&76&<5\^5>S.AW(F;'A&*81J53L_&36E7-)#9K,Q1X7P6
M-WTBU#LV4P[1=[PJ>5R3Q@LO];"J^W$5_'PQ<U@"HT=+U\![^JV/GX8][H.\
M5G\L^12:^T*]6-/MV5+QV>?'J913R]T\23M/?T?B/8^O!\T@+DOPZEK]V<[0
M]Z9*G*84!OJ%U^@G=9?OM:W>)5\]_OF'9=^(%\L00D=<J2.P+^2+!>>@(Z[5
M$>@7CH:>2$%/ )M2TA' IK1T!/:%?;%**_3$^WKB>07M*%R.6_[W@7EX2PR;
MO.@%"\2R;]C ^P--_/ [OE#+$P55XVT?-3"BE86X\X,XO[KWE-&_RV8JCOKE
MNTX.5GS!BGDWSO>)<S"BKR(O,;0D8S.G6$EZB#C7]6=;#G]@RE_',A]OW3/D
MDAT,_/#MGY*CA%I<]NQ?OU$+_WTKT*OPZW=-<99BUW\:?IUE]%S)$P_[H,=_
M_NA\SWT._VV?P[^0E[?;AS&M&CIZAD"S1Y:#07;-049\P;G['63/DT-_/3^^
M'?./RNA3=>3E-I/,QIFG3*2KCK]S3H@5YS#$XB*N45/-SQ[^KF]5?1ED_'F<
MS9D<A8N,>?A;%(,HQ],G./"'S!(?/# _S,%Q%"=A!DG!#/*)!R!QEIGE6=J:
MJNKZCVEK-S29/,L'-8+H?=535N-]7W^6 GHFW[VN#5.T+CO?-')]"UYMV7\\
M,*^X^OVT0_-/-@K :+\CZG^L#Y_U^K$_,6/J=+PKAG_YI\/7C]/L;<3'M^^
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
MKI-CT2OR7:0]BPD5"[)TEB$N=K%?*C19@EY>]B3S(1B%,\QIXGWJUM*W,P6
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
MGY#Z"11)>7F[URBR'C/6LEW#.$D1EFQ#6!J*3G1BBM /WW TBY(HY%5!7A5
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
M%H*O%0N%P4(:F%I_/FDWIV5W%G,OEH[Q+(5!PF=ZQ.1;V9SJN8%B9=P3%U-
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
M="5&OZ!SEW\"+CHW<^/E:D$78L32Z4TS2\ZH^\#%?!BXPI=3BRYYA39F)=<
M^Q9FQ$L+,^:B+<QPL.H:Z;.OH8R&4*:8[D@'WQ/+_KH3VN42:DM2HI(<-5*
MWR[F;K8[;Q7$RE<2:C_0"*TR9\G<ML"VM,RFXY*S1FTW6DY$BMHW0DNR;#3!
M<(^8/Q)>2WX3#0-DRL&NTG]>XP(DO@ @X=]5]K\E#%Z^,4#:,*I..2UQFCK=
M:M/>HL3VFBD$@[=IP8;A#\/?K>#OS>SB (GOV\#?^_G&B667(=/C[5"31(YN
M*4F>R5Z]&R6W%&O#7%H0\D9Z5AF6:J-M?(V@T&O^EHRR+"Y%'# \?"-[.$ &
M'6@\?"-O.$#B^S9X^$9,@R,T:2H/ZC-AF=>:\YV=5T7ERCXAZ,=&[5RC3/-U
ML;1<K5/SMISW@- +;!#1)$=C( P6$+Z1CAT@2PXP$+Z9B!T@\848"&N3X;2T
M',7;FD1F"&?0&&58\LH-[Q;#@3W-[XBN-H]U%^4&TZ4'PZ:'82C&01!1-L&&
M,//Z>D!U$N1XS&*)#Q',P/+">1)A-<!'R(.X;34V;(+8!+$)WK1@,#;![V:"
MN)YMP.K98A/\;B:(B]P&K,AM0$T0IY[N4T^KDB5/(S09C5 $1>.,T\!8)B[8
M^IF$4EJDO>QX^LN95%JJ7FP9([ FEJ"[6B[$0G>A73FAU%TGV]EMD9.%>6T[
M*4\T85C?3$2*V2>44G0\2K!Q'#@+DJ'> ^Q"%1=[X#*JUPE[W1+$+A\VR_0,
M)J;QBPQ?'UJ"MET)-#-M(A!#Z: XZH_!*S3@A6O)W@Z\WD_F5&AVU.E/>D--
M'2;X@J8MR5+[RD"F)::6/LET*$W5.DY<VC+TC%TC($/)G&PBRC(?"/]C- M
M,B=&LV#6>/TJ@OT[4!#V1OXEJUBMTM+NS7DUHPRT6FXLI.4+YRY!X<++G &Q
M'B>Y;4(<BD1/20V:4C_ER",/Q% B)DE&XV?:>?P/1K&[L]@8Q7#%V\L#6G[7
MJE:%CCLFV"K;<L4"WXL95_:C:,&L5JB.6N5=L<711EKAS8(/0:A^;9R-DNS5
M.K"%L8*M)]782+*! B=SO@"&[97^"'&ZR$.P\8^!,+B('L[-"KC$KIX>B<T-
MFQLVMYNE0H;7?WZNNL:(>P_ZJ.K:92G.45FL9*W$-LZ[*7XN5:T1E1$_3Q.D
ME)EK.^B>[([YQB][,>DT\C,S1V[F<4_E%H /9$.]:0-KI<K ;V'1 K(Y,;PK
MGO'W]5TCO9'J*U?(FX5F:E[?MA;KB4C%_8Y:''']BD@8'7&6:FBR5'&Y^P>V
M-IR0&K"$U(?U128+EDN6Y85+ )(?M\BE0_>DSU-[]_,?,J-BVER)RXJ6[_"V
MVI@)\\DHA?P'O]_5AQR(\"7X7I! Y#? DE4;1,PQ(A#G)KH0G)2(Z<]*!&I>
M9 5L!SX-&K, EJ<7A@R\CRSXD:7*#E#VWT.::X<[Z^0A&<GO'@;YB_S@B^[D
M3C/M0**4; PW3)K(E.P2G2@-TP4V]85TX?/- _TLXF.$/=BZ<B:?N%\5ML0L
MJ^8T-9:@J@67L;,DW(FQ*)^8)*@H0Y$X@R5(5AT$9'P$'_+> ?00,LK83K&=
MWJ5UV:/:*::B/] (^7U7YF532$ZK^JA3'R[X>6$58WH:L9WUU\B50:0R]F("
M9=CWR,-]0'0,7+IN\*EH;*8!3S1].#/%^:C!Y; OX7BDQHE57,PJ3<T=#<"T
M16^FM:+'H7AL] <\C^^3N)K9<\T>2151/<&CV8J ^4(WMP#LZ>2%:\E3R0:1
MA2[AK%:<U8H)XRL3QOS>_KQ!C;WU-:#QV6=8XZJP=:JRY#8)JI31)HG.>E:<
MP:U6PF.-*2+*D=<_]XBM.+BP]P@^VZ/D%X<TI0>;WS<V/YQO_,U(WC?=CS/[
MK?:DGN?@7:J$VH]/FO6B56UHGO?!_?C%<1\X*(BA[[8\+X8^G$R,S0]G%X=
M8CB[. 3,[-]X"\9:3J>UW+:EL20H+.T*"TI"$WD+B)W]D+OPK3.%:\")Z*9M
M>RRM,P4H%1C.PV,ERH0=Y]]*]7W=6HY<;"*VJ:O*8W66PX'B^RO@!YN&WU0#
M']$W^4@#3FSFV,RQF8=7R&\FO6(SQV8>I);WV,RODKT97#/_*B%QZ6*L%XV%
MO%&;=;V9LJG&/#?E,[E>P6*:SC17_GP0!&ZGBX9LSD$%[JG?*\MJ]&?"R%B/
M=<TMZJN-$J]P6W0RC_/+LA($KLD:*'-^,U468^8-4FDQ9@:3Q?TPW!'E!;?,
ME>,YGAHURC4FU[<*VY0'=\Q'X2[@:;3HDE?HSU9R#?#?_R)9XA^:B/HO+MZH
M#5.Q?TG%OH(C&L*18KHC'00 CX*=4NM7H[Y<#BU-[+AX-[ZL:.U*5E_UXTIK
MS4^NVZ--C#-#6FFT5&'I=->.E.-VM13TW)+['FU,G(O21/C35,)KHWL:*SA&
M&NQJ^G2@9!4 0/N[VOJW1+/+U^9?FSN]ZV;3*C%O%XQ%;=HFFD(*H=EMFK5A
M%,,H=C%./3BR^C8H]GZ*,4G;DUDO.Y.%)9^HC5H;T&WT4]=%M 1+.):VZ\[X
M+;DLK,#(Y UZC1 -%8I($%&:.6UXA&'MQL&'X)AJH&'-BR$$1U9!9[^^AF5O
MA CJ=28[ EDZQ;N#M+T=54%CN%G?J'W;G)72,2&OE/@RO2M4;*T#Q)F'9OOV
M;>PMVK=A./M#7" X)AI@.-O3^\&158B]M&9<;FHL,R+X&+LNMD'-::C)*WM6
M_5PF7YYM9R.BO<I;QFI=70P[30^+O#YN7#3!?F#'&(9\Z^NAT@G9_VW*%3X&
M]8]%B!,/ I&3B1,+@ET0&-LNMEULN^$L$HQM%]LN+F$;SA*VV':Q[>*ZMN&L
M:QM0V_V>F:=9('L!D'WV*?F2?4KA[%-<KS6@R:4D)=)>YCOUY7RL;<6N]%.S
MEJ*QHFLLJ*W=Y%+-ZV:7RIGR*+>=-*K"/*>WL[5B4UJM4MXC_?A%$5$J3D79
M!$Y@N/>F'@?T'JN,ZG7B=3<%H\L'_(SL3FHD,_68(,EILQ#CVOS06J-'0LFA
MIV=V, AA$+I3[B<&H<N#T/NYG:EV)L<-%L A7(;7,OU.,SVH73@MZG= DKEE
MDS5'[1BQ7"1;+-?CM>'. R24VPFW* 1Q_4Y@&)7N5@XV3*ATWSJOP<S,_#04
MO9&:.8OWME2KVY,U0*IBU=52;CM]8:?HS=1,4Z/51D)?R/S2L%)MD.?K]J*)
M'A"E9B:C[)G>RC@S\W&*XX8'C'#5VX_C$F>YJMNS8@V"ZK9HN5$3XMG)E=V:
MO-P7J"Y!MK1>I0*J2K=K%-83#TE08B5%1IDS%1)"F5AYM4*VGJ!C(\D&"IS@
M^0(8ME<(X[&R.1Z"P'[87HFXN-W]-2P(5OH(L=^;ZQVV4VRGV$Z#GQL97E__
MN38:>?7>6KQ>(1;#IB!KH"U/MZEB;NY2GR_ED5)FKNV@>[([YAN_[$67T\C_
MS1RYO\==CEL /I -5:D-K)4J [_E1@O(YL3PKGAN:](%A>6,- RB9U#\MI,3
MUXK8%&D*,:YTE*.OS[=B6,5IJX^?MHI+<'\O,\49JJ',4'U8[Z=7ETVW6\@F
M^7RBN)K.AW$F]H52/??S6)*%4GG:,>(4L>0F;MG);'DW/T$>"R)3/^BR!#SC
M]X*\*;\!EJS:(&*.$6\Z-]&%X Q$3'\*(E#-(BM@._!IT)@%L#PE,&3@?63!
MCRQ5=H"R_QY24SM$F2X/2;%^*P3\BQSABVX!3Y/TLLMUONMPL0PQ7Y$3,Z47
M=E+S*QG#Y[LD^HG$QT!YL&+E3$KQ;+>N,8OVHB?,MWFIGE:G<AEMX6@_I3@9
MY8@D3IIYW%2^1_3['B;M.*1-E,.K/-C<<((M9I3?[;_\OF/QLM/B1JVJWDMV
MBUI>+:?*RFC<S2DIY%B@;%R<B'MO%AB#7'CR=8//[V)KNUNFZ<-9&TY(#0A-
M>PDW($U4TOVZ;<^(LEZ<-K;39E/4U\@-\+)7K\:V/DKB*A3G"?DZMLPYG$5=
M-]<Q^.;"'>FJ#$>- 9JD:,0 #OK.X8T(V"#^'%R<=\79KCC;%;.SGV%GX6QY
M']EG&-GQ>,%T4EF&X^M+D-E519#DUTV19CQ&-LHEXE'B(PG_.&*/\Q5#)<0'
MSRL.,KOT&3B\F"MY"H8O[J.^TM2R53!B KNN&[-:(5_-%"8(#.,_?EV_ 1D&
M00R".&G[FX!@8"CV]P!QU-GQ='/"2H2D]]1YVN[NF.X: 2)*N6:B+'7]YK(8
M%7'.-<ZY#CPGC\T4YUSCG.O0.B\W)//?W8%U:_&UU*"V6EU-),"HGEQO"BGD
M<'@9T\CCB..4Z1<MR>R9>H_GBZB>P-$L1<!\H9M; /8D_L*UY*ED@\A"ERY>
MAP+3\#@C&G/NKSEW?F]_WJ#&WOH:T/C.D?!-GAE4ZN(*"/-&(]U))SM@DIB(
M=!R1\"1%1#F2#7T*TP-9,4[<_,9YTB'-:<+F]XW-#^=-?S-2]TWWXUS2%*OJ
MPT[)M(C\6ELL=T.;'6=2R/O@?OSBN.LSO!CZ<#8USJ;&GD?PE0FG5^/TZ@=D
M9/_&6UAM<_.=$AM-B7S*K)MF79(,>HV\!<30?LA=^-8YUC7@1'33MCV6UID"
M5,4"SL-C)<:$'>??RI8>F98"K)C_]9_D8A.Q35U5(O\BO/\> ^=P@/C^"OBF
M$=]1 Q_1-SFOE]C,L9EC,W\4,W\SR16;.3;S^V9E8C._0=9F<,W\JX3$I3NC
M7306\D:?--=Q6ZW)(D%IU&27Y'>4W'!7GP^"P.UTT9#-.:C /?5[+=+*]+@D
M,KET3LBDBKM!:3Y9]O6)2+->BS0RFN1.4RPNWB(-H^8EDF0Q:MX@B1:C9C!Y
MW \#WC ]3U?J>D7C6;I<60SGE6(K[P,>\W' "W@J+;KDZ/.VM@9(M^ CZ J\
M4EK242UA.QHIN0;X[W^1+/$/343]%V@N__<_HU#FKSP&'?L*D&@(2(KICG00
M $0*=EJMWU?R<GFT-+'CXMWXLJ*U*UE]U8\KK34_^4(>K?<H==>QT</!:3N3
M(;MB!ZUB);M<$5(ZF4R/RU(]9:Q%.N&5J:"C3)R+TD3X4U7":Z-[*BLX1AKL
M)KATH&05 $#[NRZYMT2SRS?9G4NY1#DYZ:T(UQI,>]5N/<NJ*81F<81F&,4P
MBH4 Q?:\>G!D]6U0[/TT8Y*V)[->=B8+2SY1&[4VH-OX:N+0GQ"MT6F,EVR:
M)C0V,]WE-[E2H91I(D1#]9<31)1F$AC6[AV "(ZI!AK6O#A"<&05=/[K:UCV
M1IB@7F>R(Y"E4[P[2-O;414TAIOU94'L3>HL)O3YS;C7W GS3(Y(2:LM;:/S
MF D_5D!&6>(4S2X>+,!P]H?(0'!,-,!PMB?X@R.K$'MIS;C<U%AF1/ Q=EUL
M@YK34)/7]JR886ELK(@-']M,\\0VIY<24V^OZ-'X<2Z:8#^P8_1X_/\X$ISS
M2^''7D\.2L6^GF;4<U$=;U^%EL;>?Y<''O+CP'-I;;[^8_[XU9F"B"3+</V4
MC"TJL6V8#KQ=R4)M#R,JU->))>F1A61YE;B=*; !5'W)A;L$H""-5E!%;N^5
M%\23T-MCU9 ,&?XVO*O]0FT_7514?UAE/KI4*.KJU__"?P[?DW4@60CWIO\H
MJKW0I>U/3Z_W/W701RKQ1,?1#<"WIGZ<AT8ZNE]"".*_T T=7??5Q6(RT/5_
MW@MU':X0\)CRCU_LJ32/_OT_QR)XT>*8;.JF]?.P/!S)?"]+RD. "8B-+"!I
M,6D,[_FGI*^EK;T74"+Y]+Q*_WQ>86@$]20!Y^:_(D>OT3.>S/1<VL2.A'T
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
MF*[C_02B'.!D>*!M/T4NOUVZG]'4C4@;+.!<CH 5X:(1B+DD% [:>OJTA"<
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
M/3BTMWCIR?7Z"_L6%Q%=-5#1;M1@Z-#]&#A^]W'_<C&OLLJAS)WBEU9'Y1/
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
MB@_C*<;30(@5XRG&TXOSBZM$$DRL05+GU6*MV% KKD/TF@AAN1^_Z"A-?>"
M$ ;8@.27W1L(0B[6-_//[BU7#+!! ]CS[":S79H;-EW2M5[*72<RG%!:\1Z8
M(GHS&643W'>H3,9^60G;[L@Q'4G'F7_?+O,O=$+#05*<!X+S0.[A2M0FPVEI
M.8JW-8G,$,Z@,<JPY$WYJ=9HS!B->';'QVJF9+E-HF;3$[C:(WZ*8:,TB5/0
M,/0$7D88>H(+/1^G<N8#0]TNEGV*4.U6LC*8-K04ET)@A X*DE&&QLEB=P<C
MG"R&D\7""T;G:8^J-,OE5F)L(6S; RH9%^U*;==$P(-H#YJ)<HEOGM4U^I3F
M>(./.TO^^"7 J?(6 :"<%FW_^;__&>%4+YSJ%78YXJC01</N6&RAK,42.D%B
ML\5FB\TV=(+$9GO1' PLME#6^+F3(,,?[/\Z/=*Q)"@D"?XZ#O?C<'_0A89I
M;AQSPS&W>V8.%@T%C#^1/>BM,S6TSNS3!:6!5"2&VW9)<[LY*K9U4TN:;GZ:
M-__#??$;67?1#.=-4UFKNGZ&2=]FI>G"Z>@%8CZL5_/5DF.Z_91(TBB?(!F-
MXXHV]S9;#&W?$MJNU'0!*Q(.E^-P.?8C+NU'.$9WQPKKV89O)_)JB1\7V^*\
MB?P(_R#"AQR)1P[(?T$]&Y(##,>.+("![AM76+DW N*P.PX$W'M'$,!#@R$7
M*S[M'@)7:+\6[OV@ME,=)AE2;!/MDIU7M6VM,OK"\<L+^$$)G9KVDJVLPV>(
M3:&[ZTU:S@KZ00SB4^)$ I]M#YS=8SC%<!HV&@=;.:Y@$0BQX@H6V&GZLM-4
MZ">)]F(U$#6WTDB-6YT94RYZ3A,BCS[D-84_K>7K-2PZJ(#%Z2&-L.6X'%FN
M#-466&''R%MGO3R&U'"XZJ-;EU<K+0U76L5TD?F'WH7Y\>O_7GY#<F]I/9)C
M<N%SH&>+8'S$@1AL<@F.=5LN ?2*7=_%=C(UA Y$W&-=4%6,ZQ,OH;4R#%48
MJC!4W:-^!I5>=&R=J3):WM!Z>:XB[*S*!,$6KI\1&-CB F"(H8$MCPRZM[0P
M;'W8PZH!YR/^53W&U%-99:4(RTXY52(+K)#<>D"%"!J&B7(<_4&.YC^.!'_]
M$E--O>C/,\U(O9[^F6L[ZGC[BI\<>_\=*^%O&J"H]D*7MC]50U<-$!OIIJSM
M-9PBXD]Q_QO[A_NTZAP]R+.!'QXC_O*.8RZ\/S^(=I>1ZM]*T$,D],TO&]2?
MI/)!,7@Z=KB!/1[)IJY+"QO\/+PX_C%$ODW]NB=S:1/S+-)X42\=C)UCO(IY
MN.*]LX<^@O@O].".=?C5_=5(7R#78R45=77F)TWX,V/=7!^D=/@[AB[]<V0!
M28NA;D;_+$Q;1=;ZT_)ZMZW ;]?<R][[X<-0:62;NNN WY[]3DO=L[9\U"&
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
M >VJ@:%IAHM2+K[8A&\74OVDFK.[=G5I!&1' \;@'4>G-XGM9>:]*320B=^
M TIHAJ3Z7H2^D Z/J(XC3'ERJ8>I$)@UN]TP9'  .6$*'VZ;#CB=SPS:V2,O
MGR7Y=(3]BW])'F^48S?&N@??YR7!A1*G%OB]?K$]*.1Z\ <T$1<AO&3ZQ@46
MTL# WO:)A4QO[/ 3W[U&DO]&([?-]5/]WBAO1G_UV^%>HM"@BKSG]I65^8'^
M#=CG #+AFB3K]R'D__O=-X&HAE"EW'^FAJ4@3OAMXL+@<_"J3]\9@A^\;BKV
M+4-S;/!JHE?RG7H_/9X1_@MGM_G[)0=J^(F)!TMSHTL3#7;-;2X-%7^*OGMS
M.UB;KZ[-\>&5VS+FBD' L?,>FOW*Z?_W7Q1+_F./# =^)5O_.=TQVM^DP(T?
M*6X]YR,L=P)TOG;0^;<BJ8^J 4V_DD=Q!PV_T:6=AS_8[/V5=[0E01$A(@4D
M[$(@&.KD2/B]".?)C?V_)P?#;T6U4T:I^,!V<QD<[B NY<6+5!KV1OE9/U)7
M12I)VMU*/\E2YXFFVW<OU<!$1 $=9GF05I 7L0M$\T#42JV0;')@.0'-9")J
MY-V<:-F4*] "\_"'>HS%3UHB]SCORLWO-+BZD4"7O62,X=]<"P&-CK#Q X2^
M*80NP5$U7#3W(CXU.0#._=6R5QM759J<*4:RW%-KT>RP*C (G)G'*'E$-=-
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
M*88*#F4"]+C<F4N 'E<X4OD\>I2X16?.3[(6#^+3E-ZFEQ.A[4+TP/>V8M$
M/8+$)8'N<5/H<4.Z!^_((7ZE)VDRJ<?SHUB^UQB8"#WB@>X1H$>@>]P@>MR0
M[F%UZXY>E-HY<JE/$WJF&L\LQAQ$#R^WT5'*QQWF-CJ;<P@2*G0F!]']$BS(
M#7(W1+S'Z_9W@_L7TAI+ABZ]"?B399DJ*$/#4@L*[^2'0RZD]UR!(KTL1Q'V
M_/IB &0!D%WOG.[:5/P.0'8A!?9=((O&BV#9&N39YD2P9@.GT'^.#C&08;=9
M/!(-@.S:0/:]LX4$&MG= ]DM:&3M?HP-3VE15@L%HT QX;PA>1I9/-#(;F,/
M!D 6:&2W#62WH)'QZHR#_^9HU:GT $N1]% K5Q&0^8G2CU');CVL[(19T1N&
M+6J$^(8O\8>>201)2JY_C',+5YJ_ RA?2+L\ ,7SW"IJEV13("<I3I7S(%73
MTIQ 44%2I !O;@YO@C0!=Z4$'L";R'Q T;7VK*>69[(8693Y4NRYBO FR(84
MI"6Y-;RY!=I\![RYGGZS(ELLX/3PG 2Q3B)5K[*JT<!X$Z1!"O#FUO FT&_N
M7;]AATX2:C7LD"SD(V"8E9-Q>> BO/EH_J/_VB)<]C.LZMBQ;&6P/,/E6M@3
M?N<"Q#B0XS7Y:%CQ:%)R)K!7:?_]3>W[$TU95N9__A?^V5S/U8!H(IP8_2,K
MUE03E[\Q#_C#7F,"'7UB(F@R\*.1]U@&^1A]&"')?Z/);?6[TUE( IKVSWN>
MTG4/)V<\"<#]:IX.?"EJGYQ;?_]GFP8OIPDA_Q:T#Z=;1/>)26-D'8)0WP2B
M&A('<-"_1<T5EY9/H6C\B5DC]>\-(C,(&2D2+LZ_B:W7:))[2ST1%Z$M:OM
M'M+ P/[M_VS]&0;AS8>&I2#,^&T"3;25.7BUU#ZGV,;T-TT]L;M<$J:@A-EC
ME+/XO:G8BY00B9&)(/I?C7+RT(+CUVM9N+V9_(\>_C00XQ+&@$@BQ-?MEVJ@
MXL$+[F2$920*2YDC]]OK]3A$YAU$.D79G%T1DP)].Z58DF98C@D:L.^$9DBJ
M+UGZ0FK.+A,)*YY2V5F)S\M"2)^0OA14= ?(G/U..P$UHQX( "76%#[5-AUP
MLL5?L^KZ8(X^1N#T/P^]VV#[\*=DV("(/1%)$\B*37!#$P!4>0,N?M];^8O.
M$G^DZ!#V(91$89OM@\P!_N=T$%C6"6YJ*AH$G$<",AOU2+B P#@+9$+1;8.
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
M<:I4TYU(L<H)$8S5T<?H:;'Z+2Z[06O@ZXC^#"SK-Y$" V":+Y5F4<(  *S
M3#@J?NHC9\B!U7"SXN,&Z?H7B7-2OP#QZYN+' _BO,A]D#0LVRJ!0]*&9,5H
M*JG$I\V9RD[YL#(C!]$AFLC#GSB[)VGV3T9/)FKN=ML^_(&D)4JH.'G%RWX7
M& U7EQMW2[+ A@ALB",O$KZ@N#*-Q".-&-4E,W9YH#GM1K]C<T+4MQG82#BP
M&;YD,R0=*$Y19BLO RFZW:$CP)^>!_!OB83W*P-N4,?]%F+C!ND:V YG$34^
M[!V0.-JJ [IAISPFG>@@1KFS6"33XH08ECB/\4A@.AQI.AAZ2+JL<+E;:EU1
MDNS &P/A338<=/?O[N7&6<)2KTVMP.XXAS" 4"6]*0_R Z6>B6<I@\QT9F.[
M8#WGVBE7B&-Y$'YDXV^G,]F5!__%EVKWK_7_T"O&I]D0Z_O$:_WLB'1".)GN
MZ0I>H(*/??@PT2O@\$Y2.URZP2_TW5\2HO<&9<+;Y')1=)0X!B65L>&#-=A(
MPQDW4)9UE$P/_1\U4&1%-)>(JE3T'W0KWP*VEVX//00GZALZH@F[ =[#=G_X
M1!Q,>W1PU&@+BXJ.,M40<$>A>R3PEVBTD'N].:/G;E(\/_KYG3=9W7'&-@5W
M@C/N: K.M^4J]N@C*: ?CTSGO)OX^;T<T6]0 8X7)S0X-%QM.Y?UVTN]DROL
MOZ\2C)X])\)+ 0&+T^4D?O00588"5DJQ),VP( ON9T0(K8;YDE+G>))>I4):
M'+CSQ=3'<#AV('/V.^W\Q*BGSY_P@5W^UX+D)[MYAGSBWL6^^!.Q16_,?3L4
MW]Q..RTE_$S2?T>[$&[T+F6\C,[TR?18],/?*'6R(AVBW3.JL4.47S#SXJDK
M7TF T\W_X4\;0-A"\YN:QA3JF$NO_L7,4:8833W,0%^)B$>\QA S[>44J:,0
M\3'0H$PL%@'A1+0QQ(C'I%)ZK6#]K7Q.N%7H14;M)LF'%F[,;C[WJ2S+[>A0
M<&+2;]DQT5UQ"^A[2A2 @@>4U[/!*XN4JO( [0&D#FWEO*FF!UJL,,J-R7HF
MY [ZC#QKM[Z40@FEB/>++Y\\9Q(J#X&63@9>004H#P8X(9MI(I)NBT:XZ_U%
M%Y$$1^7](%OC<@(0!%!!^,>__E+!&7B0U,%IWQ3$IUX!""S;\5!P5L(Y\-)4
MHAV%TFW)BKFN_.!8. \<UA/Z6-P>U"504U2YP9A _NG# 0X4/^'N5B>X'L:K
M03P1;93;2X*\@,;XBHD)*"C[?HTJ;SQ3J"2@R<Y%S<&=^CO#C_ DD-SVJF'@
MSW'V(3\+IU_+T",6$MY>%C*<I  .QYL][!&-]I=?+JQ6;FXJ?K\>FT=$OTP&
MRE>F(P4#R2K-2_HM::*#-Z*(\O=!0HFX%7!1QK/I1LWY+\J+M%U@P_O*&QU8
M %-2K*VIKGMX^Y>>ON;5#9>A<#8!_G:MR?FE,N1UWNXU-^Z4]]@B'_K=#I5W
M=%-W!"!KV8C'9*2HH.3,HF7HT"Y9$A)$*Q$_QE\^;X00CR U^B^SDR$;H'[$
MN:AH?NE&CVTP7Z)DA K2FB3%7H_:'Z"!9X@3C[_B!/C5#K/\0XP,%VE_CYMA
M>4 )[6WD05K7X4#I%($HPPW]0AEDCF\&8*Y9!RZ]87I#G:#TT5!]A58A2IP(
M"0^I;&)6@TNUR>/H365[T"]3V0R\C\O%H:3QNH>:>/'6E$$+Z_U@FY]/G$CV
MZO(.;AW+@H_$I/27">Z>OJ-HLE=8;PY&BJ2A/&,F5JD=&_CFS&"@0-WZ13QB
MQ/66V *HL(Z])CGZ!@)[:$//J:&OL]=)OK"Q_-R8FS2>(EITU#%<%F0P>".%
M\_!W+2KX(B$\VU+Q7Q)N#AT%?X&YQA^5#W_^-+=D-=XV:,O">5J>Q(;/Q%G3
MUJ &92)<#L0PR6VK).$G(*Z/ #3BOA5WE! )?//57\:UB62M92!*(@]03R\V
MY1QL65EP1>$7BNS %IXDV5BVUIZ=%=3?.67]'2:HO_-JJ8/Z.^>KO_-&'9;W
MW0T?<$[0EZG:LH>?RHE,Z8<_B;5(A5CW/03$QEQ>JWF^1H#-'2A-408J0. #
M&:1,S453@9\0FN&+\+6&B4XDH"BMV[ARGXLM*1=LU$3XO#GLUM/3+;#14F"K
M%\-[Q]K>R&XLXK&_\7%C+R#E<->"@7)'0D+<4_L\C0#.X=$SZCS5$]HGA^T2
MSVOTECFE^ /U- ]/VSQ:FWCTQH\/8<%BBMKCCH8Z7'S<E0A7SA01'H1P!>$^
M2D_],C'/*-NR,]:&V+HBX8OQ8:'E67J6)-2B3&.!-6Q(V4/9:Y%G(:0L0MX1
MP>\L_I^@9@?N+,04%N2RW*@.[(2;E!SNE,<71T(B7/\-MNT/_J,G:5MU=;_D
MOCE8V+;B>YHJ<.%M3I?YM3:=6#:6T]T$Z&L$\;N@@9RU1L/<HAE*MD<RJR^J
MN8Q[-@]0?3G)K8:-6J,INAQ@N<*PWF2K7T,0"YJ)NI><^ P^H$/YCK^5AM[>
M*\[N;>BU4P5N<N0]\C[=N%<@ZI8EV\"5>4@JYM<D^.N>_^#8CCQ_MF8#6Y@T
M"JK;YUVJ"6IB?&2GPPU[6#UT $V1 H/.5JC8AW80/I).&B8JI&J#+!#EJI>O
M/>=1"'.^OZT6^3S;9!9DFY]P1;>1*RUB0LC];'9Q#LJE\N 9SO9@*G&Q6(K1
M]3ZO\Q.1;C==BVGG..[A3^Q,F<3AIK!0JGI<;!X[X7R9[4EIQ G(W-,A\TMK
M<A$C2"\_OSV6V45%UX$XA5(+BBC\QC)L$1OD+S6?,&>YJ%C=2\6Q'7Y$N JU
M^+OA//JTG.?5W]UF/*,&*''2C\JJTK#29"=!EB+63EK[7"E].M:S!9F+&&Q4
MYD.Y9;B<;H<;2FGX\(>.7XKUMFH<;G/ANOP=<J9+V'FWKH%GX6/W'<_2&NHL
MKYSQ'M*]]A!Q]291,IX0?[(ADGXD_-_CA;#\7Q*_&@94+(E8F/[/Y@E</8D^
M6'>^Q^YQS.X#5'8/.<BVV-X;J3>IG0I\4*E3O"/CG1I\.]OD\:\_P>YF&36X
MMZT4/]=6FF>GY7!%CL_(S&P@C"LR5-7KG]A*Z)&_N0V;EC&7UA&3<HC@!_=5
MK)0=SC*MY%*E]? X(RW 2JQ!/2E\D6WE5_?>W@X[QR(_FE$:(\7<X1.6C*N=
M9GMJJA.KN(I%IRQ)\A?BD[*A ,?465)5F'19*XZ'34J%?,)$KXZ_Q\.NC2AZ
M#.IB[/2K$;W$$V-6Q9H'C@."#WP)R]E5%E!]>US<'I^F^2X!]/*ESBCBDP\]
M87N3; YYY->=TN03@2ZL:MK2"[(ZLO<MTKS3.>6-V*O2XO?L%R';,O5%Z]"9
M+0+^UV>,7_!3W-Y!QT7\<LGM,RUOYQ(;5/E.OCH<6(AC$/88Y.5<!VWXM3OO
MW=.^]UQ)!^L,X?@)V?,PO1RSG3XPYC.>E<UW?A]FD9E+LBE.>,=]SC6LAK <
M+LX77-,LF<U)IU70R7JB,12?::%>6W[1M;+V@9[#KX(LMX,:Q'7]8Z]7<61/
MHL-8/5Y1Z\.9&HXGDZ J#<^VBHF.,:E,[6RTF2E5*N&NF1REE\.OK>( 6>-G
M\X^]N,>]0"RXDB]1'>LC\=-)& \R?/?])@AD'4V#XT@<4QJ)ZV@4/UYH*\
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
M1H# *T7T 3IJ,P$$?$G1X/!M^!4T4?SP=:B@;0[D+*R?H>\A_"J&;!%3$U@
M-[(-_,4[;C_\#!,%OT")A-HF#31-"WX 7^'371'UE! U49< 41\!8+_]Q)V#
MO[=OE7Y2=KV;_Q/]R>F2,0$-1,(&?%9",R35%SI]05G.1UE=F WXV;(]%NE^
MO9#A8:\ BJ<I[-<V'7 ZP%/TT,CS8I-/1R @_B5Y/.M[;.+WX!_+2X:FB5,+
M_%Z_V!X4XEI_0!-Q$<*KH6\@[R4N?_V!Z8T=[0?TJ) F+@W'_BTZMK'&3Y+\
M-YJ+;:['X?=/>7/\&##C@D=>QVSX*1:YNDSZ,!A]7!AMS3G\% [_L"G33^SU
M-8\+3SEVGQ/^Y+G:_IZ^8@!1[)1JZ*^<[F6ML4>& [^2K?]\,RRXOI&R!Q77
MCCZ[*XK%?B2]3@=4=WQ&@G1HXE?>T98$182(%)# I ],@J%.#E+W3"9BDX'V
MQK>R!WYW3.FO.FU>XUIP8G<3)7^>@64!\(;7=WUBY^5T@G*H/$@KR!'<Q5FA
M]ES"D]7*I2(1H\6WQ9B:I/*U?$2I"K0?.Q _HBC0R<#_;C867-5(H'=^<Q/U
MMBAR 0LV -O/@FW* 24XGH:+9NU=;3P M5HAW37X0G;4+ \&1B%7E>//B:K
MX,.W1S8<N2#4WK-: Y>9#13JGZ$+G^O&_XFR'P<:\EV#-M*)&ZYQ *N76D9W
M! ?4>"<F<-4IG39&>4X(>U@=I<Y7L?B^U>)HH!;?NUI\7Y ;X.NMX^O(!.
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
MA\IN*XY0(SKP=_@M(!462##AKSR^1_PON18^ZHRD%<J7;Q\\OUP&\@5:>+A
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
M$-&N=FU"1+O:I0D1[7J7!B+:;T]TAVOSV;5Y>WFYMSF;5W[&?F><]U#M2YW
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
M D_NS8;H\GUC^^'V:>B4?JE3>AX0Q?W9'W%(2\F6T>2$T9IO,0N^I3Y:J<0
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
M%1K]\.5'<V-1+.O+!>E6,IN!/ALU)O$&Q)N#5RID^6JRW5;S_*Q7S1=FW=D
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
M1;S@JYN=9>_[^^$ZZNA][:XFL&9OK/E=F4U@S=Y8\]L*VL";/:H- %I8.0.
M%E+6 *"%ES>_N6D)G %  ]:L =KO.B8 ;\!# \X H$6%-;_M%@&\^2EOOGY-
M\L-H6L3+PRV]9[O-4[\1@3QHDLF&1C[\[TGJY$\A.YW([J 2R_>[R 364+5!
M,[K*;B97D61R_:2/ZM<W5B!XGU,O&]*>9($)7EV=?2)V1U8Y].T]&3S2&K7
M5'R7A/NR%"$J++)KA?83@,%^!-#T+C + @(9"\*R[)&,F6W*Z<G9KY+NWE*R
M^X:#_Z18?T?(IF3V*V(NY=;_7</ A3[S?ZK/')_(AJMRU:Z)3>YX!&9<(N_J
M!&%<0!A_(HP">#K?OSP<@.P)"?'H90^ ,"1 B(61/W9A% +QL ^HH,+)V9VI
M3B0;,:IN.28RW5NUAMU')C.B=TR#]K$/B7P["7<=8@.P?P='GN/HT,I\L9)$
MLUYHOS9N._U4YYQMYCOV.;*RY?K0SGV[XTM9>C',O&-AZF,8>*N,ZR%&R0,,
MO^W7.#,6NFUN6I0<K?50Z%RGIM65TA-QX0NU)QPKWI.DT>G2I7=R_Y2LNJ7:
M?7\ZQ9FL.82C.<M"^/^4AC1;E*<0%M4IG.[D\N8J>\4.T!4[&7?'D_/B.;F/
M*)R<)9,Q5ESO#1:DW@+: =H!VH40[394 O\>VA7DEB:J&5-N#L5RI<+G)GIF
MW-LSVLWDBPM%2SO5XK!^,62;%\-6[Y+<Q!1/S@0QELQFMXIV4$H1T"YHM#N*
M5M5;0[N/.[U\#^V:<J_Q8//.E)UG;^>6T<Q-JK?[]NU,_GS2&3=EL1AGIYV!
MS2D6F\MAM,N>G*53,2&YW@4&?#M NY"CW>%WL=XVVOW8MVM=7EX[]9*D#>JW
MKY*9%C.9U/-TSVB7&C_E\O6FS@[F/:-_+CRVA.&$UK;A3\Y$+I;EUSO 0)?K
M!V0C$W_"Y)2AJJN6[8I*A-(&#@;U@48_NG@+./^#B*4/ ZLHX,&],NP:2?U^
M,F=;6BN%;KKUNZRQ;[@W!F7SIMPW^T6Q=GZ7*UQHCX4+4JQ(.#G+Q-@TMVW?
M%M05( T@+;QAR4\A[?[*[O3UYK,S&'?B_*3)OXQ2@WWOUULOQ;BL7/0%-O\\
MJ5V8,^=:OR0UW42\7X]Q_'8A[8@2EP#2M@9IOZLF )#V@]CC;R!-O.BHY<MJ
ML]Z9O-[DY>>;ETEMSY VN+]JO:CVC<3>2*\7]?&]/9Y?$B^-M'9)QC+9-+AI
M@&GAIM%O"PH IOT@PO@IIET_=Q[BJ>NLR@Z[]<9]CF]4;^_W?8C<&F>FY_?)
M\T8Q7YREI_PC&O,#@FFTGPL?RR:W%F@\K(.!,E+PQR:"_,E06 $@&V0:A3M*
MZ0.&9QV,SO.H>??8*;-2-2,WVI>%X<5TW]8A_V15\H9T5VRBM%$J3;527QN2
M;@@"-0ZI)"14ADV/ ?X _J(0T7P'?YEGJY7CA-JX>#,VI_G1 $VF@WUO^"]3
M(Z'Y>LLVBRUQ<-L39V6Q]3K%"R2MJL68D(8,R[#I,< ?9%Y&(?KY#O[B'?'V
M>LASE6*U_WJ)?YB;M_-]'^%8Y0N^/&_>7 W4U\>F4KU+67*ZAA>8/3GCQ5@Z
M!=Y?V/08X ]2,:,0*'T'?P\72+C@!ZI3'%YUG[OG-Y:@U/>]^57TKH[RCYTQ
M>Y/%9%#NN/-6LH<72$*C0C*6R7PAY?SH<C")4) .9D/*88U!8T<=#9%N,PH)
MB*L=QS:"OV4>68+MTBKLN19$M&GH!PC"4U CNO;B^\%2#U5<LZ$5?4PI+$&*
M9TIRQ=9Y*_V4EXHW%C\H-)]3CJ+LVY-NHIOS_GUA'A](/?O2O,]/I9MBK9UV
M\SM30@H2!P ?HTU#P,=]1E._CH_9HGX_:$Q?>DWUX9SC!]WK;*>V;WP<7G=M
MI9!7A68=U>*9VUS1NJH1?!0)/@I)%I)% 1^C34,_P@KXN(]PZ]?QT;BJW+<'
MMZ^MHAAG\^?S^9 U!_L.11B%=B_[=#X;L>A*GV4NY%KR84SPD62>IF,"MUV
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
M3J?SY0R<']Y-RPA[Y)!G8>B+UYAU9(S@4L"(,#""2P CPL (/L%G@1$A8 1
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
MC.9"KY^;AQ  2TVU/"\\U=+L9:>8EB[%^$6\GFNG2-1%R' Q+A-XY]:HIO&
M\H=0^??H 7VL_.5Z6T]6C.$U.X]W2[6!WHLW^[GP*3\WD/OI>O:R6<S/Y\-A
MA3_7[HH]K/S)D[,4+VZC;3,H/RC_(41)/E9^.\T.9GDTK+"7N9[0'/2><UJQ
M%S[E'SGW@IU]N;IDZ_;M];V9E%ZK%S6L_"*Q_.D8G]UN('7W:1#A5_[=WLZ(
MMO*'TO(/>K90E)S!)3N<&LVN=LN_%HMAM/SL'6ME1?61';[>S'(3IUDXSTZQ
M\F>^8?F/+UD%TY6R3I<19*OLVTTZW, QH1C'!T@Q.+8$L3KPW?@2-+NMGOU
MW/GS<[]OI:]8,:=8>E7MWMBM$+KCN9=\,=L?\ [KC,<]X?FBH=M7/4Q,O!?G
M.1&[XQSD-0! 1!4@]K]C_P@@Q*O<=6F,YL6FI-8:QI.=ZRKE$+KL1L'N9J]'
MW0I[^5!\MF76*-_=US Q\7Z=$\58,K7=8!UD-$!&PT'OZC\"B'BA\YP=<.DD
MFY=2+_6KASL^_A1"@&BW\Z_&0(Z;;*MDCHK-?MN1!L2#R'S#@SCP7 8_<N/M
MWD>.*?<E"S$C3=(AIV'[KE-X;G9%</\. G6L G60.W=;'BJKH?0[#X[O,!I[
MQO?J0JW9Y6SOOEA7E0?LK.N#NS#F&U]/!=3,OMR5FRWI<=8L9L9/5U72)Y<<
MI6=CJ0V=,0 > !Y":V_@=#;L5],C:F_VM\_[FKWIU"I#OG!_-9CGKD2G\?)@
MQZ]#:&]JW<PTF6%'HR+?*F:F=3OSHL=KV-[@S5Z:B_$IX2#/;WT!9\0?"WG#
ML"4-3F[W61/XXX!ZF/O&101H_[3)>#CP+6N6[KJSCO \N!D.<O?M6JHE/9-&
M<_S)649@8WSR"P!WM,=AH,R'J<S?[KL=#F4V[Y$R12]&NZ@VQ8=Q\BE_F:Z2
M/MUX<\S%DFDQQO(I4&=0YV-1YS]M1AT.=1[UM:P\,1[G3;%AQO.WT_QE+CO%
MZDQ.HDGJ:(S;LCI'^RQZ7^J\&0-!G;<4T_A]L^9PJ'/JM:5/AI/4H#C,Y,>#
M?B65:I9Z6)TSU#IGTK&T^(7H]4I;YV D(V3]F=_WJMY.[^H=]6;^(PILN07R
MA:2:#Y+FH()JR9IA.5@3U[L9-^87E6JG/5*:E\5NZ_(R>S%I%VJN:JJZ@Y2<
M_<ES;?(8MZ7>QQMZ;W_"N\#JB%8,&S%<,L$0 C*4@DP9281^0])?>U%C='<=
MQ@/+V&@A#)@V,H>JCFAG[RY9XX2NT>@RAF,RDF4AVV(P@#.:*E$QQL#(="0+
M*0Q&>O(M-)/[DMY#S A++AE(LKW6WQW$F$A&&%05VCT<SY0.R."?1Y*J,+;!
MV":>4Q?A/R[>,&=^H9EJN^/]S:CN:_!ONJR.)(U\>VA8-B,I$TFWI1XR'(O!
M5!G@D?TFY8OWO VJD@[D##7)VMQ]KV>O.LB>D@;EWA@CB=A__"K2/]U;Y/"-
MYXPBV2A!9<'MGVXCN:^K8P<3QB%TP:OR'E^FZ%":J4/,:#H<Z99.2-S!S)C0
MKMNJCNV+2VG,C[4G'7WMV033<O\L+;^FKR)3,N7^G)FJ=A\/0=I#:6B"-(N,
MXWXU1G[$#HW<=_FNFIB<]M1@2)]WK,66BHE$./SV3C(Q\JPFX4>79Q/;O-X$
MTUB5J+>)];! 6'2P/E8U9%%.&R;A$1YJ[!BD8BUEOD69)A.S[#''HAQ6B380
M%\T7T"5&$_G\=4L6S'!_N[/0L0JMOTM=DN/5EY)76)@%FF1^\(+U:>$'U@=Y
MF^>GQH[VQEMJ^2=K2#*)W]G_1U&MD2;-3ZGQ]U3?=RCY=$)(C5;:PE. 6&T*
MN#3NRF!Q&6G:/Y^=2@3;5O!WI9]_ &0\]V'#0?+O_ZRT4USX *2UO6&>^K[X
M$M$]8O+4+>^AN-NM4>KB29]*VE2:6QZ%TMF$X)]<GB[<>8%:(Q8SYR]FZ6>R
MR#568U2(+U';VP7$-=2U3[VO^9^9;F])[\/?=(WT),4V1J<\EQ!7I23))=*I
M-4'9RH$2EWDSRA*#P0@[-/]J5/.;&$Y_]O=6R[;8^^CDK$&A"&-7GOA'^M+U
M0&EU/)^U*5&0.;I%61.0S?KVGA^;R"Q1=ZDM=Y,BJR3EMLQG.^VDDA;;V0Z/
M7;2TF.*YK) 6.>G$G9KD;PC&^F,*/;T.1\UZ\X7K\_'S2NUUBOTZ]OV3M7AY
M6)L."K?L>/Z"S'RZ*-B56IM??_*F']>G=BK9&:!KM3:8EM2R[/3PD_S:V]OG
MN8F*>)&MFI>S\4UF=G5>Z;6%]3$?&GSS^>FU>,^*E0L[T^JEZ[EK4C%X[<EN
MTKRYZCS<<<V6,[G,W*8KW<H]N>N^]N3%O=Y]$F\?>D5Q?%NY'9];O?YHZM;#
MH4]B6/0<3=>N?NJ4>L[F?MS+'V#55TP+-@[Q=?."Q1.[2>LN@V?L>,_8:<;T
MO9DC!E<GMG6#%^%_7?@[L:PC$71G<]3!\?M3,61S%*-.K-'!,Z BA1TT_&;7
M0\QUNYKQ0$B5D\>.ZNHY@X% CQL.=BY-DSBUU,EG^A)Q9C$-J=>*.=1U-"W!
MW!$:4R>V_^9*N[*+9T+=4-EVB)=" P3^A_X[8BN_+7FJ4\ERG2;\UCF#:%X%
MM@#8T2,]&1&3ETS-8.KJT-'<MPT-!;.0."6,J5J#N(X<[-]J3-?$F\"I80YB
MGK>'A4%B/(:[ N *#26+1E]BN</B=T\D3'-74MQ "/'FC9Z.V4M^Q#+ENWGK
MGS,3@\R-+@?36!WB$>FZ%BZ7A-GL*'-"E+YJV5A8%_[<\I?IOH&ASGP7NZ9#
M[)S3.8T<S%79_43'>N-.Q">$-U]79?"8SM MKN?]B:R3>O6>PT\W+GA\0CR?
M5&2R>$:R1PS)]5A=BT1^QYX3]@WP!"QW:M)(M?$"-&2Y3VH&MME$)%R6=(D?
M;M*=0^-CKDL*T1-W#['D.^,=%9+PG$PT,K"_AF=/]B"8:YA(KA!A[_R==#$C
MK!B&LKR<.AK9-!?'5Q AP>3IWHW"SM(+I]C]?R,C_IN*-UIZ3Z4[ <HB+-)X
M)J^N_)'-P>*]:#9"NN4.2=0/VVJ%?*"0GVA.%R5HW<;_<=4+S[R*9^NJ:, P
MQ.\6AC9Z0[[#GGK[A#AFJ:]'AR((QTN"]0',>9M&A8CWDNPY%A'P%9"R7(&4
MR*Y*PP;..MUAZ*PN]Y'B:*C:7031<M1RYW3E]LUP>U$AI:K?DPBRB1=Q+EFJ
M17W6]5#;3>_ZJI;51IW!4'B2JK7,;/;:SFTA>'88"D"WK(L]G'NN@IU\31I9
MZ-3_8?GE9$G>=H?X]+*[85C=8"V=NWB[*W9M5V2;_EN]T3B70-\[+IJ:TL@;
M6,PF,I^FE"]M3)9>:>#78(=EZE/)_SU.ACYU=ZC8TBN_W1EZK* O]A^5.AB7
M'1MM=4>88%/^D=/BQXVB]NW#@^4-__>/\I9X(R2$-+ FI*P14\":4+(&NY%L
M%GBS3=Y\,Y_<LS%[O%*1^1,R?=VY_%72W?:(=M]P\)\4Z^\?)G1\PPKL28B^
M[X%EOI\"LVB(SG^K(?HR&HB)="I4UWG>'3=LA^!_VO'[ZYK]&X=RCTE;6U#P
MXOIV$>\2"TCVXA<<C5_P02O](1%Q>\EO:V[9(9'MY.S?P9''<XW"5+;&I9(0
M),&^F@#8K!?:KXW;3C_5.6>;^8Y]CJQLN3ZTWV7_Y:QVM=OF^+9 HS;\X@[C
M(@!S/E_\>.7G%="(T4K9F<4S)1I$H@\(WFW$NU:G7ZZ5TUSS<C"XN>T]#*K/
M3RO%Z^+"-S((STG4"EE6WAAVO#. /#W+ZF'CD_<R*NC'?LAHOL@7%!;Y@FHK
MK^4OI10J5N>96>;>+A;*K[DV)L3)&2?$V-07.FL%9E#VIL$_OX!X)\UIIL[2
M@0ZXA[LW"T"C'VV;=V(( K6<S*^ +<'&/'#!LPO"-NR"S>8YL56L/P[XU\Z%
M<"EP)7OVYW;!0Z(+P_R=.;C 9D.7\1,Y<O)/CQ0V6(CBO,[+8J8R&]0;BIK-
M-)5GXXJD<& +D8KAC=6:@5C?&!_DEN/G1N-BZ;R5'L,.5S*,8(<1LAW&OB,,
MT2;KQSN3?=,URCN7R-NKK^]C<DL)4NY9?TEW+T)5N[^S==P&R]8>=)LMN=MK
M#<;:%:_EV/G]H$U2#LG>)\8+1['UV5;@;#DK3H"MT![LU[ZO@D8K7K9O:D79
M!KG1LZT:'>NBDYME'T<%]B;>J;?4; >Q][4]!\_R]TUS('?;3T5TEWRYS$XK
MMXTD:;F(#4@VQF>^:D#\B[;!WT'](!5K^W=0HYR&&&3R?55GRM*<X5.N(703
ML/,TA7CNYG;[J_T1'&[)ITRU^=3"J7S[9?3ZJ)FI6D]J5B];%TZR]Y3O=U:5
M,;7SB(7HJF5%,LUV=GI=-I1)06:=8K70+_04Z[&1.SE+)3Y6R9_@*7Y0PV/%
MF)'FD!N5C$KN[M,\9AN9]'*$'Q_N'B;#V2_PF]1L_!/D+;G$+'FT],3E??$#
ME_%I+!\/]KA:C#]U[S2ES0FV,STYXU/LQE!5 +R(,6Z2$$GP=^]EJ)@'^%N+
M@X $4W<Z%AH[1 #P,^M)\3%&M6F^_.)VM.+>:B;#+5\)6+G582',PZ4T>%_&
MR$!A%C(.NPF9A90M_5:_L;5FMB>VB_EJL5/(2)?Q<RD7(EPQKJM7M>>^P++5
M2J-RT3_OH)OLE."*N%U<>;M106U&9[YB1S!O*L;$%2D^X]^SB'8RL[N3$1.I
M3WLH'VJ>7^@R+KE$!A@1#D9\WHX$&+$K1O )]BA3]T/'"3[!'V4R>.@8P252
MP(A0, );B21P(@2< &P*"2.X([T#&3Y&<(DTJ$08. '8%!)&8(WXM.\F,&*'
MV 2<") 36Z@CO+^SO 8-QINF6QF)AN)I)9FN&SV62!D@RS8=M\2,Y<A]AE;T
ML?H,&COJ1-+('V*,),ON=]U2I6Y)RT7A(+3RR$B:NW_'GYBD/-.BU@VI@.-^
M:;F6ES0:F<;,+7Z$_ZB:[ND$*8>Z2#:U&,5!_F&%U3=,VZT:A+_DU:'V3A@L
MQ&!%&5H)IF+H\;=E^K/TETA6-Z)'#[1L*Y(LU#<TA9R"F20N[2U;5]:*^EBT
M_J?E=%Z03,]&2"$RTZ]FLE+,=*D$+J/2Z<WIEQ6$/Z3OP@\C9:68SW_>%7@+
M;^UX_KM*!L4[_[QX)_\A9D'Q3BC>^<]VBG=R/%;DI"RT.9G+MI-R1VQG>3G5
M3B8SO)3,***8(<4EWPI8EC#T\F5)E[R45U)'W;$L/#Q&TIPN:7-+M=J<X'TI
M&'[XTN/G8O\V@8BL,+#:YV3)#)]@WE9-NZ&F_[&8M]530^*OGW#W8F&82.$W
M=5$?[AY9CK:AV%MGUZE%'W<!X)>Z( ;CH+CERFC!OE6*24L4(T7RWLRYO$(U
M\XUJQH)JQ$U8U%>7:'T^_*T71W<S [S"W[22MU=Y3UZNO/?V+NNM!I]?WYOX
M.O0<FTQ:-VRW4K>)L#>PJ >(- M-^VZ)0/Q7U?(*$ZY8>T_1%"G=D3(II=WE
M$-=.<EVVG<DFNVV!E0199&568-E =>9C_>"2V^P44,76>**B*97H/Q:;]\*)
M;=L[ -PILFRU^0#Q%R7L2BJT\B>MHH^1OS?WBGK.W:0;A22>&B-70HD'JRJT
MJJ!N3"2W1*XW 'YP47B=2+*-=</VT[QH@5-2^I8H0]\T=%4F*DF<8^Q05[$&
M#E57.[$T8UGO(VW$C) Q(HD:3K>+7 _8-(9K7\<>/YY%!]DVV3+@2<ID8=XL
MAA:A@$5R\/O&$-&:_5T#(P'5>M3%C[E-!F@S ]DO3&IYZ3QN95%/T<AZR .?
MK<4OMTA>1JJF^IE0GO./=S!X1T%(XMB8RM[&9>Q(]*( ?IFF=MU:_Y0 Q%LW
M#8U4,"7C])&DV7TZ'[KQP3A%^HBX],.?2OY6!6^TD8/9[BV5?.$7]S?>.U@D
M=\KT9QMSH4IB>@9IZ]#]#A&T^7#41PH:2B[-/3I,D$ZZ0>"M'V::*N.URO,8
M\XO_&]-8IM)%TG<(="T-0*OB8G(,#0JD;G*8C,BN$K])QE/"G,7[G8DZ,4R7
M9+^$OSUAI-M/U<2.)4-=$?*T1X.Y)P6&]:$08?*-5 SKACE_0WZWM0-V7RQ2
M3%8BJ5YX1C&: ^46O\7^#$F\(IQ5$)$_3'\[3IF^Q"0:JJ &P\:O<WI]DI=&
M*$M2QOP2K+1R+J8 FAC:A'*9C"*[FSDZ]-POJVLM%_KMS/$,-56>#Z4!\JA"
MR.X2 .^4Z8=D^@/D$L*3)HV\9%VB2"%=3Y3>YNTOCOPQCK4%T:K8,4QI52=*
MK\TI%Y >6ZJW^Z;XY*V>$OM&$;-B3?_# Z_;:\N$#12F+-G*$\(L"3^FG^+(
MWMZ?",>%1KJO&"2:<.<FT"I,$7,.N;]:<XM$(=R(!]'[][+O#4B!=+G.=H+)
MX;_AEV*0MMRZV>3[2Z]SAW[K&9/BV%^#OY>&IJI#!3A13S 7AJ'0:11,I\?D
M%-(WQ;)='XGY11XC_BK/_G-1R-&?N']H-YEK!XL-S[*\&P69$F"QZ:21ZP-Y
M\\ 3Q&PT_8+.0V*2-'6HVIX7AF$)HWLW+GEOIBU3B/;$W2+7^ ND^#>EM430
M4#$EE;C2/CQ0->^@'F$I<O6"4&1H$,-(H1"/LDX?NI?UJ$2^\S&9\,+)@JNR
M;=!L1)85$TQ)7\IYY5E.C!$2?('H9#3?N*[/Z@-P]K)C^\1/)=36D3R@<Z!7
MTO#KT_3U$K;GCB[[F;8_FA 14S>U'_NFIA+O(=WSG+%Y,"VO//M&V:,S6U29
MXEF>_1UQR.NG!E[6%%. ."*N;)#/W[UA27M.F5%?0]AQ7#5BFCJBOU"Y6)))
M,I"K@4NT?@_CY,,+U#$=R232S0D+E][+3'XC0VQ)GV/D>V5R!\A+5"7;EC5U
M)\ILD2"B001/]RJ4>\Z$A2TJH0!)B2;EXT>T//MP1!XF?U%((-%FYLAV/8VN
M:P[>C(6)U&''P2[- K0E_4T!B#=(E)#PS?7Q%J'.CRF<8.J2YKDW9,*2MMAJ
M;<(^O'_!KW 7EDG_1;^6$?_RO^(7M??H;JDSK*2ZW;=(X77\E96F _3+;AXY
ML>ZNR=+F>VJOL*.>=_1NS1NLN&G/G*O:I+V"Z4&KW_.B^ZX'PX=6!*,B]IK?
M'J2^&MELNH'X*?+Z 4S('REV+/8(ZUZ9X16-)#BU)+W$-?C<(5M(7 <_)?=5
MS%2)[M[-Y8?<S?K"Q].1@__CO/F\--1H$<-E?D^.+"K+F&AO=%B66$YP)99+
MOI?8K8O@WO>1#0/S9D0$@I(4B_H4<].C0L>[WD+ET&]B2+=#.I47KT,!<?V1
MZ9T9=4V)'!O)9&L3<YNA692GWI@*EF4LERY+,%;)I ,:,>S4K446?@8[.+%W
MH"9+HZ5C(;)A\3Q8NI,R;>R*4M3W.E)\A%,;@=\MF"]Y,XO;1MS?Y9$7Q3U]
M,%TOW@7X-SGR$-7'=V^CL*(&BN.JF+_1?CM@\H?^?(/AJB79L*HR>E,[,CE,
M$LVSTJ3KWMS?-_A6W5LX)0V&<,-KAD+LS!![_X3=SHAV[EB:+Q%XS$O,-L)X
M;( 0'H,<P17*Q3>]H<$#_("WA@7@8((;NN]&>C/!PHK(>ERFJ5@ Z>P7@D<;
M !+2D": /A:X!WW>P=ZR%[RI3PV63W=I^"N\F&2Z*L+<<(7LW907OL5&)Y[$
M%O&$I"%Y"9?UY^C[EA_AK+\+=#NL(!H#X9.I3^?Q"\W\9BI)NLGSSDF)XXN]
M7-/Z^SM3Y9?Y]N5I,](:-85#M[34.5S&KW?^DQ\'7@K[+&+'1'W]P(@/14CO
M4YH2_Q6K MFS4#5\@R9ZY4E;0*C/%:HEJ+>(\V!&N%_T8G9D.NZ.WOW8/8>A
M6N7/D7X1T0B8^XP;4U@>(>;I+W5<:0Q!PFJJHYYAJ^YP[CY.D6QI$5=W7[M*
MF*4 ^N+]-*9AC0C*$X@C\CHA=*;A;Q]&WSS5#O:ANZI-O>8E8KF/R7C7MSIQ
MVH2+D1R[;YA^KQS+Z7BA1CP*_8I[2!!W1NXZI-$($7=UVD<ZV2YA^X5=^L27
M3\'@U/DKI\X"G#K#J?.N3YVOM(&838I<6@CVS&OO7KCOGO6E"3G363BWQ+J_
M=Z*Q[T;,#YX1-AQXET_V17.F8TBF0F U3BKZ^R$RZ@O0L!%!<0_H)2:/=V!=
MINSYHU5BT) 9>_,SD1=Y]MUQ8@K?^6XK;FC/H1M&MXW? K_IN</"32=.HFLE
M%WZ?MR-X<Z'*I!G<XBNDOYU*_2:Z ?9;-R[.=FDY FGIS/:C*9(&RWAS:M/@
MBWL>[!V&]4A@)+&%\\&P.3Q8F>9N+^ZWO<+"%R"!UJY$=VQ+>P?*>D_FR!>\
MF"")0 P[VMSGGG\JX9]A>*%>;T#O^W1K*9GN43EM\DT91IT@-QY.MR@D%D#V
M$.2$75MYTR<#^.(3(QW[Z*F.?QY'&A>Z?@?=;?35T<H7W"@#S1Z0Y$6/\[*J
MXRVO84N)#^^\OR6Y+<%< -J_Q(>W&=N;MIN+F2]FZ\7,_95LRX??"OJ5%F<*
M/$^W<IJ$_4N\WV%N\'#H?_^526;X?TB?=M($<FATB"^-W3P7L,CYF45*3B#)
M4K$'3 ^MEE5?\L\,U)5H4X<VL9<']+C4/_+R-J9XNX4- <%+TCI/([)(L-E-
M1*'Q"[Q7HP<;QIMWC45V$;](N)&R+?5BC$[?N<,]#O2#D';?%<J/PI!4H+VS
M@Z7^KAC3_IT6$KQ?%<--&I#( 0_9,)'D OI,,B&\%<[PH@LT*K(\D)AY>\HS
M\608S;#HIO+?;();_+G[M7D+7PVS?K(^3DB^F]>&!?)O<_MX@1S>>/&?K9!/
ML&LK_'3>@K>Q-M4A.?#QU':Y$ZVE$LM!0-8O@>/US#7\3 1L+<CYG^NUT?[&
M+BZ[^V3Z %EFC.E(^L!/&R.A1N_H=\-X2R=06PG$^)I$=RDAT**6'UNACJ&A
MD].VWN(8ZRW3[JUS[\@Q\19A*UD'^TI]RWM9!45LG8PAEHA%YJ>U_?S.+[J<
M?B!#U<F)4KQ#FK$N#T>VSRNBPRYVNX)76_SGCM(EA1F-Z6E&A^PI?'HIQE3'
M7I/G]P\EV306?\.F75=HP,D/MKI;<J33BF9=S8^,>6KOG2"\M=".O=4]HW+:
MU<CAAA\YP\.2Q"T\%@87&H%>7!U93,'2C"F9HGOZ*[MGL3'\IKFW'R&R[^A=
M:6*X)P5+7@IU<62:KJJCGN0>1#$23>4AL7;R(C]*O!(:1C,);^HZ9,:6A[4$
M%-U+-J2EMC>V-]3J<<^WTFEWJHD1D-,U#=^IKQ2D/_@G3=D@LOK#R&H2(JL0
M6=UU9%7"8W<R MM&2E)I)SO=;CLC27P[F>THR2QB!5;N!!IR_03. _.K-EZ9
M67A4WLK9CIA*)WERMT*4VTFA([0EKHO:23F9R29Y,941Q1U=L @T[+<DA<2O
M4>5U"FUP[+$S2K=@JN5F^1&7H4%WBL3\U_&.JNSNJ(J?)-R /_#IG11*YM7;
M36Y%2R\]P/(.I3?=7%HD=N"A#<7R<R:1<GH(!3*Q#P#E $-1.@)JGX6%$5#H
M*12,R/RFV2 P J#IL!@QQ*/@;?J'C$@FTOLLHKQ.?7HTA4EOF]CY(@?!I_0G
MDD?ZBXW%\9_^/BX.\8G4/NL_ 8< S*+#"/"S0L$(\+-"P@B II!8<?"SPLXA
M\+/VS2$ L\@P ORL4# BG1!!(\+ "("FD#!"3*2 #R'@ P]\")(/M&@Y_?]@
MSF##EZ5&1\W@D?XX9VVK '[ !),-C7SXWQ..._E#Z@G9A/#IYFDW"7N!Y1RY
MR3++23*+A*-C$[,]:.+GFXOPD<@=]3OPOE6G_^@)%#TEVS&!?N,D'SU]?N.\
M'@I]P*D$( J_4^EEOOJWAD<SAA;Q9_Q;$@?C=/IIV.!J_D#<4G\J;3R;X,0C
MDK9\7])[:%76_LP@[)%DF> D\.3L5TGW*J.2XCN2KEA_@RD(TA3\L6YR&;HG
M/!K=)/=PP J I.U$T@20M!](&O^GDI9-I(Y)T/Y]C%*V>Z$Z(HGZ*Q#?=>E6
MIRPCM%H5)\RR1>[X^HWM\LN-[>I^.[N@G=?HTFJ'YQ9 I"\DA@.10-V^8_9^
ME[J;IC5/=DJOS$Y-G1N7,+J!.E%'(V" YX#G@.> YX#GAR%@@.=;SBT"(H&Z
M!9)CM <:+8$XK6\5*:+Q^R=:L)4P SQ)/.ALI9.SE?*&3$&RI=,C/7V&+.,]
M;N6 (L>A-0%MT@YE1^:UJ8!#2H!;@%N 6X!;@-MP" [ [1%>F@.XW5_("N)3
M^[X8=[C!J+V'C -LRA&\ =\[=<*M>W!^!?D(<'X5&)&^5K 3SF*"I:I;9!.H
M"@H-]C.,1 +[">H&]A/LYV%1%10:["?D3X:&2*!ND#\)^9/1"%GO3B49=JD)
M\ ^3*>N2AF>Q.&4^RB.SI5%W6'DS0N?.M"A%M-)Y/@%G1GA3H1^197F)(Q/1
MVNMX0$9,QG@Q?:3*M!/M^5V/J.C+4"83J*W?0<GQP+#F+] <L#M@=[Z/&:EL
M+,/RH#U@=\#N@-T)E^8<K]W933[M/C$C&4N**5">PTVWW;H$!;A9CE)'BDTV
M)X+YLD'&(^^1;DO:M@*2T3U)V5^,<@/-]ETY-4K8_6&>T+Z)N-==1BR;XD"Y
M][!W#=<YZ=8%C0LP'+*WC*+P[G"C2PPPH%$A(AC0C08T)01^P@C:# 84#"@8
MT/"H'!C0;6;:[IN(>XU9<TG0Y6-/T]W^B7ST$W9#%^J.S((;QA8CV1&A J36
MA@%Z#S_U*2W$>"[ U)5(*1FD/@6SU659R'T"U0&#! 8I@#L@F9@@9$&KP""!
M00*#%#+5 8-TC$FZF338(TC2A23=XTS2)6,&5M0V;U@V8W29;52GWSN5(ACL
MC"[-#KM67Z1+Q$1='8\V*2C\5(MZ)A#H7WB(!/8/[!_H']B_*%$-[!_H']B_
M_6?  DB!_AU<5FOXB1;Q7%:H);LY3NY'A2VH*0N)KZ$ FL//,^+$&"\*1ZID
MD&<4B SQ@=_QC(C\0)H1V".P1T';HPP4 P1[]"-[%.RU2;!'X5\YV*/C3'O=
M"G[\$EG^;U"DPTUUW8[4) .4&4APC705VK?\5JA&&Z[H9@C+V$0)N:&8WJ;]
M1BR3"KQM2G25^VCSAK9_!PLRB*"67N@RA?8-_5$B(MC/#; FQ+ATX"%?T&:P
MGV _P7Z&1N,@T_9 :\UN)YHH\$+@,6@0OJ/*Q?U0MC@VZ%!U="7K: O+RN]K
M,!SE>1?DV88!>8\@KRD;XSC(:X*\II^<,XB0UP2: _8([%$ 6,+&V&2 Y4%!
MJX[0'@58#Q+L4216#O8(\FR#BT-E^13DV4*>[3>E)DB9@3S;:!>2O30-RV)&
MIM%5;:@B&[[<VHC0#*KHA99J45?'H\WF"3_5HI[# _H7'B*!_0/[!_H']B]*
M5 /[!_H']F__N:T 4J!_D+D*562W1Z.P)[0&67MA.23,Q*&8+"2YA@1O#C^I
M*)F)L6R E^PBI6205!2(#(F0Y J: _8([%$0]HB/984 VPZ#5AVA/0JP.#[8
MHTBL'.S1<2:Y;AU+4C%6!'-TP FOV[]&&FRKC<A(SX'DOFXQS@FE9L,6^PQA
M%9LH83F4RMNT&XFQV0!OW45=N8\VN6CK@I:!-",HE1>Z=*)]0W^4B CV<^,.
M7!"A5#O83["?8#\/5^/ ?AYI*=JMPUHZ^.-4T.6HI?9N/\H=;*'V*,O8$9:G
M7:WI<)2'99"P&P;H/?P$J50RQK$!)KA$2LD@02H8ES#PKBH1D1](D )[!/8H
MV(3=3(P/_GP39.BH[!$']@@T!^P1).P&<5R8@?N,D+ +";O'FK!+Q@RL6&UU
MA$S)QK-ET&R$= M94+(V?#FZ$:$9E.P++=6BKHY'FQ44?JKM+1<HTE0#A02#
M" 81]"_41 *#" 81%#)41 *#"$5M0?\@\S5"1-M7NFL8B!;VO-@@JS_4:5E;
M25<8//X T:CRD1Y40;)L&(#G\).3^$Q,9 .\UQ<I)8/DI$!D2("6V: Y8(_
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
MNE:KT2F_H0)B:)?*CXP2JZFQ_*@6*\?R(U1'*U%'1J.EE-AZ!9EJ!]41'LY
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
M==)A+&0W8/6&QB $TY'4$,W=@*MD4#F<H)NI-SL_"WJ82M/\^;%X%-_@N]6
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
MD;MOF2,W>\I,R<S;8OF!VBX4N@K&'HCX/0A4KO-Y0<4P35(J;>HN#60=1/@
MYA%)6X&D0V'OS=9?,=(#XVX*%WFT.JM<-PN@NB^0QDNI8Y_+5)DC#D9S<B\[
MU#CVP^:<+Y$8 ^46RRK2+B-9)3F .(M!!1S1,-D@*!S-;"D-15'6@U0$9LG
M?">S@;DF]T./!TY2F7N]I+&;!SGG,3=)PTVY56#S"=-.V$)2$_O\PX0Q\HFG
M32UABJKJJP?RVCE"GY*<A2=X*E663( )RB$-!E2*<G1E<"VK7*NTB^'>#0%T
M3!YQ.I,"K2\#?]U5KMLH?"9BJ!7(3PGN)JZ?.,,DR=P*7N^P=)'0WFM@;<8?
M(KR:OB\Y4A)>)$;C N$SS9456J0Q==(A5T!=((P0-5)8B/Q)G+E(N9N8B$1R
M5D$ #\%:QH4$F>OK#.,X3Z@$$:<^J+025BA%5NXVWP&J7%9)82CES@E((V(V
MR$<:TLNQ1%/-5PEY.]D*/MU#D+FCQ!>*]-U8GAWE=2!YM=LPD+HVZS_!">;+
MPI7#,.2D/!-"3H1+07P35=G_0SA77'R.&,V396-C5E<+";.8FR'7/!S&0A)&
M9+RS\@!50A*?FZKS7ZZN+%EMZ>>A"P"@CC"Q8'=@'YQ-]0%94W<4<(4 ;'?R
M-Z]4NN9!B@0FZWOP_3 %4S$K^XX2?G;PAH<GPC"K;+P!FY:?[ -<<M0".4;<
MYTFC."D8%E/758H,Y#@E)YLV.5$0T$'"#O(?7BVET@MJ5&R R'D&= 06^H%(
MB"_:DT+J9\%NY(D^N0'3_2.SAFBB@_3+XA^6@LU,>E;,&%8TTQI+M'[*IFX-
MICI;S<+FO__IM,W.J]D&7/=\HS1+YY$Y/A':[\/*I)@$(S;(BA?!)YHW4(G0
MBOPL<J84I2S-JXTF-M)<$RS$(&+P#@PF-!@[/?$5$V=KXEPYD) Q5[K5>7P=
M1!]+11J*8T]^!Y&'R'LZ\M@MO*]HW4=C,Q$!A8!Z.J! ; TBWE1!GM(;P,C<
M,./2B\,KB8+AQ&O+$FT2;@3QAGA[,M[$$7C>8$8<.F&NK,]V C_DA.!:%%Q8
M?IQF?! 6Y1KB[.DXRVL$$MD'HN@2(* 04$\'5$"!S"3I17%*+S/K_X:*GD.9
M!XJX0EP]1R'VP0#+^OLXCX,3G@A8]D2 BB<"\$3 VDX$H/A'\7^O/P3>MLNN
M61 -9/_(_B"058@AT&X01^[02<'CYG^K@I&1J1,%<3>Y(.1AJ&T 7<,LL$,'
M/,,I:W GA[!%<B0 HR,4#=9]#P!6J$*< ]AB;9%U#LF$Y/;VKGGO)[S/K,,;
M4V7U?-=,]"2-?18ZHAR@X'/RZ)EH6.KZ/),Z:9H*7#T^( ]SO8$?L\=C$ 'A
MD#4*05W9/9#%"3]='\A#M#>\ RI,T>==!651^-S+1,Z5%V#X," 7+^.:>9J(
M\P0\CNQ.I<)VI$GDG[SX(?"!U+)(A2:]QMR==I-#_UX0W60]5@J[(LC;Y<=X
M/ \V@LEJ^SYC<BMNHOA*%/A*OFN,&;"P1_RT1#<EDP-RQ5;"><!";K@\9#&?
MBA?LG(I>R?)000B$).D-7WO6+VX-FUK%6JB3W(F2&\EK6_A^" \K(:[OBAXA
M@H'II :&>1X_GC&3(BZ>_K[[/+HQYDTWRAJ0#.19#YI.?#HN<&=G(["4SR$8
M$9K-HCB%I^YTUL[-Z[H=E^FZ[>IFQS8Z7=?N*)9A,Z8:BJ6JU#-6WU9TUD-1
M'\;'?O;8^NH(SY@CCE')YMA\=S['40@_.SM;3WC&/%Z"'LE"7KV,.L*L%KB$
MD<9=-(;]/B]& B/G?%*/-+6/4< E=+*"0N/L3)/+$B?V!_E1KEA B5?/)PEO
M%4\G<QE,84K*!GX:M'" +<N[+53*>;-@RW,TK]NQJ6MU;</CW<I=9MFZU^KH
M3.]T/%VK9)/&TKCUB->9\W1189^/L]+45;-J%5ASO/X"MO+2W$0@2E;B9<J'
MGS?BBJY0L2?ZP8AS(=GWY*&3K#M9=@!3Z$=Q:B46@W(#,@H!IB/P&J[XN1-
MZZP2E;59N1(MGH0L%KK&DT+7B5FU?#]#$ QW'W)HD(&X5D*4^HJ6+7.UTGWP
MQHES+W5E??/X-,,\$$M81 '+I<A<6;1<AQKE!>+.T%KM5L?T;*W->]):KF5W
M/5VU+>JI'<-43;>K9.).?H.79.M?^!%8L+EY" YF#;\&V6]\R4&4#./MEI&B
M,%UODB(AQ/X52$'&M("U'G9YS^2/HCB-G/G)U0X(TODS$V&A1(]7E%YEIYED
MG?]A(^?\YY.UL>@8P<;K^\D"SFM93/>T;M=F6LNSC5:7VMV6V;551Z,=&,%T
MVNX<YQD\TAY' 1#:_<R;@KN<#+:J=C2KM0,L9S1)3@&!BPD-FIMAJ T?H#CF
M=_&,^QQ,..,N*NU&%.I4")E<'3<F$4'1^UZ$]@IFR5&/=X$XOF7.4,B74QYU
MXGT[@'+R;Q-EG?VM09@D?-8G0<8VX,LBGI"-ZTYVPRGNQF"\&SQ<.'N8N=!D
M-Q.&#X\S%GHPGLN\W)DZ&P;<,^,-456=[JNM%^P7^2O_NMIRBQ]-SD2+ACRR
M<>WQ;7;UTZ$CSN:K'=V0?8RSGB;%?BC%AR>]4/J,-XJ8FKB,N!7((.[%X*EZ
M?GAE[+>!YP<(DK7>X$P.X[')73Q9.W7,.B.5[&4\&=+/>P-PV9]YAKPU@!_(
M(PS)L-OWIQHL3BU<N*0.SYNX#3GM).$_)L(]%@U2I=7-A\^*[K)7RH[1HL$(
M:(<!<V1#D^ROY\='8ULQGFP6'XPO,6D6.?HN#&6*3J)<7L;5%ZHRNU%GX9>J
M1%MP!(;]H0S-YJ<7A[Q@,;^$27:[X6\;4ZO(W873TVE2.);/QAPM%Y]_/O&:
M(LG-B83T@-\Q%/LB[!\1&@31C=@_\,1<V+A$6.*3H]QC\DSXLUEP @1DP"/\
ME^6AB'!T)_]FQ@0/?O;@K3=,G.G*MDBPC/ %..C O\P;R( 5(ZZKROQ&GGV
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
M;QF@9T]Z1]%CC-P'3DU)HUAT=F=DNTB')H2QH(*&<,;U#>7Y O4.].V"_E,
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
MUX_K?',]_L51WPURF;_1O4WA[1$!E!W?&M^P_,X>,Z_<8: ^\JV(S<]SRT=
MLKQP>^"V:_^?B>RU3+NU,U'%,Q&S,S:[[HV+1W@:&SS"LP4_VR6[;&[J.HLX
M&VQWWO6W$S2Z]RQ(,4,D5ZY.NF(2SA=Q+HMZCFG.3LE<.3F'M7N;G*;#5(/#
M/_DL5.6D2O#K9^M_$JM8[]F%[WP].;6/9FOH/@WNADJF<8A+<ZG:>1 K&&#Q
M029B<UGDW$[%CZIEMQ:^J;;\S;2$#IGG%F-T "!NT['D86;B]T>U_<8LW+I[
MOBV$N>_ V0_+G?P/4$L#!!0    ( -. !5G=T)4!<0H   Y/   8    =&-M
M9"TR,#(T,#8S,'AE>#,Q9#(N:'1M[5S_<]HX%O]7='1N-YT!C"&T":29H0F]
M9J9-NBF9V_U1V +K(BRO)$.XO_[>DVQP$MK2C=V%:SK3));UY;VGST?O/<GV
MR3\:C6$<T3A@(7D_^OB!A#)(9RPV)%",&BA=<!.1D4P2&I./3"DN!'FK>#AE
MA/BMYJNFW^XV6XW&Z0GT=98UDG&/''E=K]UJ'Y)6I]?V>ZW7Y--'<G S.GMI
M*Y]?G8W^^#1THWZZ>?OAXHS4&I[W[\Z9YYV/SMV-PV;+)R-%8\T-ES$5GC>\
MK)%:9$S2\[S%8M%<=)I23;W1M1>9F3CTA)2:-4,3UDY/L 1^,AJ>GLR8H22(
MJ-+,O*G=C-XUCJ"&X4:PTQ,O_^WJCF6X/#T)^9QHLQ3L36U&U93'#2.37J>5
MF#ZT].#V@SIWC04/3=3S6ZU_]A,:ACR>-@2;&"AIMH_798I/HW6A=,KU%!/4
M\#G#WK\R=F$,J)CDU28R-HT)G7&Q[/TZXC.FR25;D&LYH_&O=5<"OS53?/)K
MW];6_+\,.H(^!8]9(V)6K%:S];KO!NUENF+M?)PYUWS,!3?+7L3#D,50X9<7
M1^U6IW_B844P3;+!/(%@5/7&TD3]AY;:9(!R]#+LSC2HX%/H')5;Z=7L)(:T
MUO]QR/'&(0>*4P$#O&=BS@P/* X&@&P41UPXTXVE"*&GX5T$)C*DXS?;)][8
M&:1RA0X?:U2<M^]7RH[:A9ZVG/+2-0Q@(6+JZRJ6-FEGP^O1Q;N+L\'HXNK2
MSEI)70MF0(N&3F@ W.^UFW[7BD[*'*1V^NGF^O/-X')4H>BMIE^%Y*.K2F5^
M78FYKV\^#*M$214R^QW:\ \/Z$O/[X;NKVK14HGEK]Y5*O1Q)4*/WE>)%K]9
MB="?AV<WUQ>CB^'G/5P/A[^?O1]<_JM2DF(44;[D@[-2%_'](J!?C4W]X\YA
MO=)UHU,)B@=54J_5/*I&Z/.K3Z/A^;ZYQQ\0054B=\7Q4S4.$7Q+Q8%V5>CN
MM-J5KG^'>Q@T51-C5QLT ;(K ?;@^NW@<OBY<?7[A^$?E<I?"5)*CCX>PWO_
MDH)*LMYVJU7VYM#7-K=*V HZ@IX>*?*C]H:.;8I3V!SZ3ZH-GRR_LE/Y%]7T
M75<7]5S^LOI\Q-]7.:[*'0=R'T%YS,C')GG+U2V;L2535:OC-]O=JO0)F,*Y
MKGQ"#BO3P$34],K?+"T=_$?;;_<:.A:,C*4*F7I3:]5(P(3(3CA6UYEM[74F
MF6O1"*00--&LE__1+\$2C;$T1LYZ?GM=A <G=F,9Y6T(NI2IZ4WX'0LW+2>%
M<PDG:&Y<H^!_F"N153O*SH),6+SY%-LCT@,J,JFL@*! ?Q%QPRQ262^6"T63
M?D&$S.J9J'[SH4#W[Y<&:W>)_8!,:D;%/?>0%<%*2B(Z9T2Q.6<+%A(3<4U^
M2ZD"\HDEN6:)5(;(F+R#%L1O-7XC<D)&-# < /9YJ0V;:3)B011+(:?+.KF(
M@^8:BZBKA]/CV2E^1F;IR+1ZE '-]HY!\RW5]KB:S);D%H07+)RRND.H<K@,
M)<QV+ T)H -PJX3&2Y+&1J4,!*6 33PN!\!2,H,K%)-, +M$*B)GW! C7;U'
M%6(6,*VI6F*5&;UE,&ZA3PUE(0@#0PJ4&L? "@%703J#:C$T!TD "03F((B(
M3O''NOV"*99U@@K,N!:,HK7=J;YB.F&!%1#[34 T&8*:,-%@E/&R:(9GMNTA
MVSK[PC9&)CP&/",UUOBM ]6@.MQ6A?L\GF!_^,  _!V(-(0^@2,%L-:!7QQ=
M2P(01W8B:X58TR]#OGXP-# \M$\BU+%&*J "<$X",>QPVLH34!V1B9 +G1-2
ML2G71E$8B&*ADQNDK!=XI7-A'DF[I]1J_<S,.MPQ9HWNP?"7%YWCOLZ8D^5.
MN.K+R83#I87G!:&*62( L#G"# !+F,8YY#K"ZEAM!AX/O1Y>AUP'0NH4VJ$O
M5%(X1B1*!BR$8DT.@  A T8YE _O@HC&4T8&X&:N4P$U[!ET]X"]M$WM.31>
MN4N.SWO$CHG8/T%?5""H(PS*LO5 DWL#36 @U/,A;:$&QJB]+U-Q\P-9?KOX
M,-@NT_4'><+.JYWD*]TQOIXS#;H =FW(]FUBU3&:#&BJMV^"8=V8 4FRD5R@
M*%,%'8!+PB0?'1W48K'M![<HUBZRZ&;=<WG NBQ27#.GGKE@O,G!78(L6@H>
MVJ= =3K6/.14<52 NWC6.OX8>THUQIAVD=(V(+5N46H& AEPP]@HH3CWJ:#H
MS4$M*\0Z5H46+O(M!NSPUYAA17"XT!Y O9\.]N=F['BG&;NUHWI$W.U=W-;\
M!<[/>8BTI%K&%M%4 Z4Q042N4A7FO $F<^KV]C!ZW30LKB*68I8];@&X5[60
M8-J0X2Y3*$E5 NS5-MH. @">%<"FFE,60Q M@,1PAR6X.F 52*,=46$5X0EX
M[6>J[B%5@QVCZG!.16H]$.*832:0ZO$Y(%!O2-FR6'D+?^HN-^=PEI?0$'RA
M=IGB&*;]R^-OX_'IJC;#-'CR[4T:,LX3;+O4,&<'D*>/G>\GM7Y,FKFCS IW
MC%GG#K:/X8][HED&9N]L8-AW.#X,1&40I HA7HCZ'O4YD]I *;XG #UIL#;Y
MTYTKD(.-#2; 4W!'#^IF(@? 'KN1BWN\<;J2Z:63**)Z%1ZC([.\9J'U\-82
MF?==$L%OF<AV=1_4KS_1.-]@\KYGJ3_UIE)WQ]C^5S:5[$E?F"\3];5'0@=9
MI.O:.2'EOB.>?I2#9H)1R$*-5'H5P-H"Z' VX\8P]D77/Y80(./=D(-LMHL#
MH#1X6HV>''YC)IRO0>S/E(/H=L5)X\#N"[]\WC?Z/W7 N[9O-!"0?X$V'#B'
M&Y>X!1IP!B3) M35_LV"T5N,.%T^9F-.FTG:8\G\1..[J)=MM;AMXPV^CH;0
M4+.5J_L"3;/L$QH VP 7=1?T:HAX=3H#I(%-K"I9:+'QY.<YH-U//NW:KLX
MXM:) D]1!W0SZ]J '_:P/"-2W05_/)Y+&!@CP)A.LS-_E7E#-DN$7#*XNXBD
M<X'T'DV!5B4$QLVG>9F=>N)LRV?,4"\+MS<U?(^^EE-[*[XZH9$(V9OM^-XY
M&ADF[\%;]$;E7695_8Q:*YP^1+_,4=Z%'@I&*>"9=)OY"\O=[%GMXD051L(9
MQR/EW!;Y=0/9U!O#<GO;6("NW_Q6P.H^'6LI4L/Z^1I3Q5<#RG_T=ONG#QVF
MLY_WEY3GJ=KQJ;)+UWVO5=*<[92QMC7/=Z W6_#RV#RY(_:XC;QHV7]_LZ7X
M$S!E734WH'0 77G:(YL>8C_Q>,%H.XPC][I",>:P;TM4\[+"AM"F.NS9P.+O
M!-Y6IGW":SJ;[9J_5;X1E./] .7]EX3\$E\2J@!NNV27\A:VLXBS"7FW"NZO
MW.[9AG4M#^WW-WC?*9EKI^>0T?7(()U"/DVZ3W[%IW9:)_A]L^T_>E7<!=B%
M+WD].9B+5EG3F :W4R73.,1D3*I>[A<*!KA_(Q.Q_5#DW$[%SZ9E1?>^FO;P
MJV@)9.4-%W[3"234/3J7/,Q,_/JX>>BO/)@K:]G,V'WIS7XZ[O1_4$L#!!0
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
M?N7T]R$4,M\E02U$ !0-"^#G+*;0M=N@Z[ VD!1"W""XUVE&_4QB[D4P21S
MY [KHQ@K.UQ]R=)4ZX_?6C+ N@XB*BDJ6M>CL*52HYW+9KBY3!%L&K1AP@G6
M%G!AP@F37^F2KJELPSAB-(0S%F/IB7C"- R93Z6&0:]06M?.=YRO :?PT%#-
M-B293#."AZ-$G4-+M',.U8:20"2Z$JV+5T(Z[LJ-9D3.24Q38WK'Z1I&OM(S
M.NZT*22_#76 K[%8(7(+ZD+SWMF0YSTRHA29HY/-A<1#.F[9+027\[(PW5RG
M"?&KZU*7X@[#%YR3)*5N]4^_ =L-+ N56+JU$5WNYJ&KU34X68M,N2&[H\&N
M:*Y5DX6>%9I*XD]0V5"(Y>&N*W@5U">?0G"WVD%]PDNU<@W1@OXJ8HH:&DV*
MQ+>2)*E4/<2[2M1+7?><_6V5'@HT2\?Y.A4;[R#HUE '2,E58<:1N'P,2Z[)
M8D,@DOZ1,4GU$V.J(^<^#O?(/B G.;V]8'\3;?=TLZ&:,N2<H^Y!7Y/0QE4U
M$I8^/BMW@>:#;9/L>@=/A+=TV?Q)+_>&MTC\;T=BYQ5&(HM#?9F'%]872J?5
M $>A'J:$Z0(CD335$=G6TX1SP-NH5@SC-4TP1-,B48>;_(L+!ODS>%X'H%3&
MBX 66%#D>Z9;N=E\N4!]B:SXIO/+Z*P;0GED'K<T7;8J%GP4M15*:\XH6U6Z
MD:1C 9U]JRVF9+5D*>J4++2)Z&VB$!4A]'"%&BBUR(>>>5#E#+-,&K4.5VTG
M@:N'7*PJ+*IK0Q./.Y>4?#56:.N_-O\V\V2>"IXIVJ_H^#G:@ WY0FW5QV?#
MHF%8_GY(OF]']<J/*J?_APF^H3-K%BS3:;#'\5BPOL.72_HK:S GN0/T)!;
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
M)<G8!C3GJN)Z=PH$ZV/AG"-(CE89L_ ^<IG^AJ@,N0T2E2GD+\FS\[GWTQL
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
M08&7Y,B#X\5,A:,^00F 53G22O"K&6AC2H6Q1%C$$'EH-KQM$F0$<J]9P>_
MNN"A&RH4,#0V4JP>% =X1@OE5<6_7ZFC"LITE;>!M[V[F](7_WJ"BNJ#)H01
M3:P*U]03OC;A0-D$0/E4]9F]E5.>(4FU\U3I>1R5GK]ZM@=3V2D'W7=UXW<:
MQ1P_&[:!I,\9FL$81_=FH %!^#;C8VQ5]R8DQ  85/7Y2-14N'TP="W5(1\3
M&D?=+(BHQT)@/T,LY/R62)K"N[!FC :;K0ZV$1IJ=\ 3^[Q\3-034,%4:NZ#
MD#*G93AC6W5J$6D<>R4<JL%OW, RG7=3J4\Z$;;I$%>GJ=L&ULV2&M6$#OXS
M:P:!?G4RE88"3M@F<"%8843H27,1H#.W6\HG&3CE#?S5,7TJU64R<M="$1B+
MQ]KO@5V^#K9@LD.+*B-$?5LM1^A.2C@<X.Y'-?-M@ :K3G6[[FVN-AG?0PG,
MA+M![6G@;?Q71/*DC$,C?L:_"/29%&$;(]O?22(H%3X$T)&2&E&WY@Y/>XFA
MZ[@6[!XDMU>"I<T]9^<55P,#*YYZ$-D"N.="5@FC"9=I61]\:!+7"..1%WV.
M%HDO!%DZGP:,@5PC4DH=XEO-SI5M7"^=)_%IVX FW'Q5XH$V0F49MLNT\"8/
M,3:W?0ZWM8'^7(2#GG1'ZKC,D(?8A#,6[M!(G<U$;@=.\Z)(86#D8F!ZD^=&
M$(/L+(SMLDJYJRX!E7B.H[VX'L/U1^SO6AEV>[AV:=$MUH V)0[94O=; @C)
M"E-F1<V5M?JS?NH'>?KCX3KI<[ARZL_R^3KGQKX_L38"#I7D1C!XEYG_6B-_
M5Y#MCX?4GUSQZ=C&ER&\728/X^(_RNYR5\EI-++%Y"6\L2:G!T%?B8W:*QV_
M:[OFMD#8I:T:"'WF>*4_DDHO TH" ^ 1/J<9NJE;I[SP)"<F,_'CJ0;3(>VB
M=Q4H/42]><!%X*J_9>-?,D/>A\(-=HZZB2)$D2CG5<K<)=LMQI%P7:23JJGU
MOE6LGLI93V$K:E>TUI2P.L6N6RM:=0D@H,.>.@"V2RALL0^%*3K]L J1%ZJD
MHHX_7^H.!K0043-]$V:^8]8FZAK]_.%).;ZJT:VJ/,%N7E*W]@;4Y%PU2V29
M2AJ@K6H*)Z&N#7WDCF)4V:YFQ_C]^L01IKC.<X_1_.?&I!-FT3Z2A3>=;P'G
M! *'Z2Y>?UC4N137.6#K$R<-[]*3S7J]4NSUO0BD610F!-BD8N\W6QB8_$:%
M??NW,/(;V-RPL/*G<RAW=73^],@Z.J]J?( URXT=./DK&#<P0R.5TY$&ZLX4
MI<O&?W2'SS>$!]H(;M53(T9 9XAFH'&\.:XI2SUE3X?BOXW)5:_:B,PYN_(?
M4]@<G_L^.[-RJ++S#0>S"N]7A6,2CIJZ;T"2PPG?KO:!18Q=/$GK$Q>K)X9]
M]7;&\;AFY>/\<SX+-9-B BNAG" @L(M;V[)VJAUL+L5V93T(=DWC>+ER.,GU
M:M QI0WTPP9[^[WC;/A,Q,,Z(O)T+.DO6ZSZLZ*VO>$C@VTGTA2EQ0ZT\/6Q
M)]AV[],U59+OO=)EMKF/W'2=KX=@]$4JA&7N P+.T34_,X 9?CS9G+LV\ E2
M%35__01%F#GEZL-Y%TJ)4T:$>E9:O4#A7ET-<%="W*I#-7:E7(D?P7*??-+4
M^1M."W,VERJM>T584MJE:\VA,-/%]_3[$'5_;[9N^G9JP*22H>^^H>":OK3E
M>A?=JJZQ#@E!KVJT#[E$KF&?2RU-XCZ[ZVBD1\)1[)$JM2LXTR\EULM&&2)4
M&$$>*"AWW9_5)^PPG4PI6RP9X2CA-U;YLG#_V>\M3+')"7Z4H^_=6]_#BD9S
M+0YH341"OR0GD>[;PGZT4,(["9<;(VW_3]I OM^-SA4HY1U>=-?]'F7ZQ<QO
M_A]02P$"% ,4    " #3@ 59 6\!X"X2  !LO0  $0              @ $
M    =&-M9"TR,#(T,#8S,"YX<V102P$"% ,4    " #3@ 59.@=R98D1  #_
M!0$ %0              @ %=$@  =&-M9"TR,#(T,#8S,%]C86PN>&UL4$L!
M A0#%     @ TX %6:CB][H -0  YU0# !4              ( !&20  '1C
M;60M,C R-# V,S!?9&5F+GAM;%!+ 0(4 Q0    ( -. !5G"7;ER?VX  .U^
M!@ 5              "  4Q9  !T8VUD+3(P,C0P-C,P7VQA8BYX;6Q02P$"
M% ,4    " #3@ 593]]3\Z=)   91P4 %0              @ '^QP  =&-M
M9"TR,#(T,#8S,%]P<F4N>&UL4$L! A0#%     @ TX %61D+.#KY3@(  GXC
M !4              ( !V!$! '1C;60M,C R-# V,S!X,3!Q+FAT;5!+ 0(4
M Q0    ( -. !5E"_G_=HP4  *H;   8              "  01A P!T8VUD
M+3(P,C0P-C,P>&5X,3!D-"YH=&U02P$"% ,4    " #3@ 59+$V_BX0*   L
M3P  &               @ '=9@, =&-M9"TR,#(T,#8S,'AE>#,Q9#$N:'1M
M4$L! A0#%     @ TX %6=W0E0%Q"@  #D\  !@              ( !EW$#
M '1C;60M,C R-# V,S!X97@S,60R+FAT;5!+ 0(4 Q0    ( -. !5DKM/'@
M8P8  "$D   8              "  3Y\ P!T8VUD+3(P,C0P-C,P>&5X,S)D
M,2YH=&U02P$"% ,4    " #3@ 597VIJ<D0&  #A(@  &
M@ '7@@, =&-M9"TR,#(T,#8S,'AE>#,R9#(N:'1M4$L! A0#%     @ TX %
M69W&N$".%0  ;'H  !<              ( !48D# '1C;60M,C R-# V,S!X
?97@S9#,N:'1M4$L%!@     ,  P ,0,  !2? P    $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>80
<FILENAME>tcmd-20240630x10q_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2024"
  xmlns:ecd="http://xbrl.sec.gov/ecd/2024"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2024"
  xmlns:tcmd="http://www.tactilemedical.com/20240630"
  xmlns:us-gaap="http://fasb.org/us-gaap/2024"
  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="tcmd-20240630.xsd" xlink:type="simple"/>
    <context id="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_zbzxuLeuX0WA-89ngSGt1A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_S9yXGNhU9UKSi2_fDuRiQQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_e7J9PZx4B0CJsJ37JZBH6A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_DqwGVt8-C0mv1goAlHzaQQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_80kahcYOjUqGkQmzsGi_dQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_7qV41BfyZka_83Rd9E4Dnw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_BXxyhagQ8Ua2U2j-cXk-pw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_MvPSx6K0zkmhTnlK51cAaw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_RtAfzhqQc06IEEJXgu3j4w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_w04Ejjo6aEC4Vj6ji9xY6Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OO4DbeD3AEuYBsybMePZxw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_13sgjWDjcUqE7NbRxeVPXA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_6drRJqsWmEiCdYkNFfUBcg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_d36bTXgWZkiZ7EHkkq1JSQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_j5Wy2RVWcke1i_MukAuSBQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</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="As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ASCF8Ypet0u4EkCXTQBYNw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</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="As_Of_3_31_2024_s2vwRyEnHUaXSAoq3iPMfA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2023_GzRMMUTuf06M6Ru_HEW-nQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Ja7L9bPAeEypmuDVmRH_LQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_B5ujXctiDUy0R8L6FWWa4Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_CLuecX-YY0KpWQKUfn-hnw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_30z85V5qLkSLDlvX5dRwEg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_kAOIRnbew0qeVvqp_HVpkQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_yLsLXAjRdk6_unp2ysQ8AQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</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="As_Of_8_2_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_IPOMember_48lQgT0IJUaPjBMtULD0Eg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:IPOMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-08-02</instant>
        </period>
    </context>
    <context id="As_Of_2_27_2023_us-gaap_SubsidiarySaleOfStockAxis_tcmd_FollowOnPublicOfferingMember_eEYZ3aYCoUqISGDYuO2D3Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">tcmd:FollowOnPublicOfferingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-02-27</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_WtVTo_t3pUifOnZF4OotMA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_BOcMZGF4UUGBZOdyCAwvQw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_1_1_2024_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_ofFDGQjvk0aI9xa2KbMZrQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-01-01</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2023_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_T6wjDTQPGEK1Gb201_e92w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2023_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X8xqXYhXF0uQc3XhVSeRLw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyThreePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheOneMember_vOsaw5u-Ak6kb7sG2WRgDQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentyThreePsuMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentySixPsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheThreeMember_PpJE2Z1nt066kkMwprLIzA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentySixPsuMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFourPsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheOneMember_HP3Wi-Gsek-mkuHKXBKZaw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentyFourPsuMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_HFFOBoxAIk6rbkfeI7wbAQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentyFivePsuMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_ni1p7Qcb1kOn6uu8LJJE3A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_CRs_D8ro5kiqKnXVhcCEGg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_j4FOz7wOX0mjcAymsnF1pw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_ghJx-QtBM0SdX9JhHhCA1g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_Bvx8dB-taEaLeUjA4XBiOg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_97xY_sdV2kKwp21GIEpGMA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_VeteransAdministrationMember_dmfo4nRvy0WlW5eKfSP9ow">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:VeteransAdministrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_PrivateInsurersMember_vq8q3f_1wEaulWVDbJ5wOA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:PrivateInsurersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_MedicareMember_obZpUPXbM0aO8cT_GDmFwg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:MedicareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_DurableMedicalEquipmentDistributorsMember_AEWBW7YCaEKs2kDUZ5uddA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:DurableMedicalEquipmentDistributorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_VeteransAdministrationMember_RH6FbiMGOUSbvzKCcZKjvQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:VeteransAdministrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_PrivateInsurersMember_UcgTVt2uw0y9LysoUAvOLA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:PrivateInsurersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_MedicareMember_-b6LJm21NEOhzGm21yrLyA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:MedicareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_DurableMedicalEquipmentDistributorsMember_oHNR_kLzWE6-0CByym0rkg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:DurableMedicalEquipmentDistributorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_VeteransAdministrationMember_RHtbhnUZukqb-2vU2jp5kA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:VeteransAdministrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_PrivateInsurersMember_DcWl6i8rcUm6MNN2Avn8qg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:PrivateInsurersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_MedicareMember_8ZsWA13QqEKqrwCpkevwkQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:MedicareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_DurableMedicalEquipmentDistributorsMember_9EnRkTwjgUiVB12kfJ9bQA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:DurableMedicalEquipmentDistributorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_VeteransAdministrationMember_JZbV-5J9i0mfSTRA2TOLRg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:VeteransAdministrationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_PrivateInsurersMember_WGGJuSIalkSLzar76885Zw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:PrivateInsurersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_MedicareMember_VFe3F2kiuEmHfZfBKs3dSg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:MedicareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_DurableMedicalEquipmentDistributorsMember_oigy0xNv8kCsIsciRMorEA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tcmd:DurableMedicalEquipmentDistributorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_8_1_2023_To_8_1_2023_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_eRrazF1Whkq1dksOFvNTeg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tcmd:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-08-01</startDate>
            <endDate>2023-08-01</endDate>
        </period>
    </context>
    <context id="Duration_2_27_2023_To_2_27_2023_us-gaap_SubsidiarySaleOfStockAxis_tcmd_FollowOnPublicOfferingMember_Hqq_A7B_4Ey4takoP09X0w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">tcmd:FollowOnPublicOfferingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-27</startDate>
            <endDate>2023-02-27</endDate>
        </period>
    </context>
    <context id="Duration_11_28_2023_To_11_28_2023_SKtlU9g6_ECOEbD8aG-BaA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <startDate>2023-11-28</startDate>
            <endDate>2023-11-28</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_ibbw37t6vEur60DioIQ0Tw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_Yedyqhznj0ylqwvdHw90Pg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_wxh6APmFhECFWHr4QthFKg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_utuRRgp72k2gz9Ez2cPuvg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_6_27_2024_To_6_27_2024_srt_LitigationCaseAxis_tcmd_WeaverLawsuitMember_4n-_hANt2UG_nH4WTTUyNA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:LitigationCaseAxis">tcmd:WeaverLawsuitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-06-27</startDate>
            <endDate>2024-06-27</endDate>
        </period>
    </context>
    <context id="Duration_8_1_2023_To_8_1_2023_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_E53nVEuX30Gj6X7CEHcoFw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-08-01</startDate>
            <endDate>2023-08-01</endDate>
        </period>
    </context>
    <context id="Duration_8_1_2023_To_8_1_2023_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_I9fehpD4L062Ap1QjHh2jg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-08-01</startDate>
            <endDate>2023-08-01</endDate>
        </period>
    </context>
    <context id="As_Of_9_8_2021_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_dQQxQiCes0iLhk0Kq3gSxg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-09-08</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_EquipmentMember_rM3vcdramEuwLITsT_ygxA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</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>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_gq6lRkcCpEOw2t6Kr9Ai_Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_EquipmentMember_htm7g8S9PkSgqk49CCeQcg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</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>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_2edHshgIxU-CWhd6nxQIGw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_srt_RangeAxis_srt_MinimumMember_4VKZ5hWU0E-xw8tULb1H6A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_EquipmentMember_wdOC90gkNU-QpUIRQiTFsg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_aYaI0ZySJkuVF2-yuAq33Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_StMZ941_S0SJsGikyNLbog">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2023_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_OpNZmYCr3ku6nMyPAfJBMg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2023_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_fBGrTaNO3kG4sW8rUuuf1w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="As_Of_9_30_2021_us-gaap_BusinessAcquisitionAxis_tcmd_AfflovestPMember_HBTiVDnaWEqDE5O3XdlyeA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tcmd:AfflovestPMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-09-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_t8KDwAfkq0yuvozStzCgug">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_4CZOskMKuEmcZ4p8j9DBog">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_ukSiPh-Yb0G0BxyoHC-AHA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerContractsMember_Q-B_OUgOLke18AcQjiT36g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_jZTyB4NJI0uhYZwjPenLSw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">tcmd:DefensiveIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_yv4OD8xh50uBTPZac1RnEg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_GOilbr9ot0SA7S3onMVWOA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_dyycOI63hE-WyBUIQuzh6A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerContractsMember_HPcRxgAafk6zHzL15wsixQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_D5R03d1RskGByrQebaDTFw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">tcmd:DefensiveIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_g40pvLmaQk6XkNT28sbcnA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X4jTL2lGQEi5OZH6-0_06w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_5KM6x-YdRUW-jJYt7e6Uqg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_b2t1gr1hEkOEJlucH2wJQw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanNameAxis">tcmd:DefinedContribution401kRetirementPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_LH9XYxL0EkuZW5wT_nzfpg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanNameAxis">tcmd:DefinedContribution401kRetirementPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_rnIYNziCZ0u25WElTrXIVw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanNameAxis">tcmd:DefinedContribution401kRetirementPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_NttyosrxakeQDzyHbHGWeg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanNameAxis">tcmd:DefinedContribution401kRetirementPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_12_21_2023_To_12_21_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_k0YKbRb_q0SepKmBcV1dwA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-12-21</startDate>
            <endDate>2023-12-21</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_XFKczmT-jUCrLNWGfjcepA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tcmd:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="As_Of_9_8_2021_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_Ck326B7w_0Krb_CSgavUTw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tcmd:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-09-08</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tcmd:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_8BiJD8Q_zEiWo40hjQqQtg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_8_1_2023_To_8_1_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_H6K4sXhMr0uC9TEZR3dfnw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-08-01</startDate>
            <endDate>2023-08-01</endDate>
        </period>
    </context>
    <context id="Duration_6_21_2023_To_6_21_2023_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_PqaXVsMPiky2DLaLBJCwBA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-06-21</startDate>
            <endDate>2023-06-21</endDate>
        </period>
    </context>
    <context id="Duration_6_21_2023_To_6_21_2023_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_YgEkMTt31EqSINuv-ZgQOA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-06-21</startDate>
            <endDate>2023-06-21</endDate>
        </period>
    </context>
    <context id="Duration_6_21_2023_To_6_21_2023_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_PoIgEsN7SEKhdygmFyVIKg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-06-21</startDate>
            <endDate>2023-06-21</endDate>
        </period>
    </context>
    <context id="Duration_6_21_2023_To_6_21_2023_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_kuB6wHaW0UyfxlfGfAlHWg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-06-21</startDate>
            <endDate>2023-06-21</endDate>
        </period>
    </context>
    <context id="Duration_6_21_2023_To_6_21_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_FederalFundsEffectiveSwapRateMember_LXTZhCgMxUycJXihNo5auw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:FederalFundsEffectiveSwapRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-06-21</startDate>
            <endDate>2023-06-21</endDate>
        </period>
    </context>
    <context id="Duration_6_21_2023_To_6_21_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_mnKAkPDAg0iU_Cjx6Srz1g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-06-21</startDate>
            <endDate>2023-06-21</endDate>
        </period>
    </context>
    <context id="Duration_6_21_2023_To_6_21_2023_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_wZdntAYob0q0QJExjZbHIA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-06-21</startDate>
            <endDate>2023-06-21</endDate>
        </period>
    </context>
    <context id="Duration_6_21_2023_To_6_21_2023_j1HntEFxG0Kc_Q8vHPNODQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <startDate>2023-06-21</startDate>
            <endDate>2023-06-21</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_us-gaap_ProductMember_4y30Rvu4XkSp7uSHLJeLFQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_ILVH-vKmt0WIR5ZPg5Cc6w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:RentalProductServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_us-gaap_ProductMember_QSwcFcYa7UqLcB0gfKdhuQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_XVztWUeXuUaHYxz6GEAC-A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:RentalProductServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_HwKD6hwGZ0equ26Z4poEYQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember__lHk1zY_ZkiZZP9bct_GxQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:RentalProductServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_BupDevr4vEaRIVahiBu9bA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_YVbT8PtiBUW0Qj_8Fj5ITw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:RentalProductServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_dBewljXhJECxvJt1x7cYQw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">tcmd:VendorOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_QflaMpPnkUONvmHfNuQCTQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">tcmd:VendorOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorTwoMember_GkfxBxGEVUut5MpmfyrRDA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">tcmd:VendorTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_9Pm2ilF9M0mdgNadpPa8EA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">tcmd:VendorOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_-lOENE2F9k6QTl4_q-DS5g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_1_1_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_5pYeZydTkUCyQNbFnxV3nQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-01-01</instant>
        </period>
    </context>
    <context id="As_Of_4_27_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_CxdJbOw2hkGAi09BZ8sXPg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-04-27</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2022_8ruiuWr-P02VR3cPNU5Dgw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2023_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_sFbAx9XpD0K-bSWi9be0RQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2022_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_PWbhMQM71UGkkKLgVkOZYg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_3_31_2023_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_t0C16WESXk2zbF3G31Itxg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="Duration_7_1_2023_To_9_30_2023_W_WVw8V8tUyv9jgci7uifw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2018_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tcmd_CorporateHeadQuarterSecondLeaseMember_oRe1amb7dkiTsF0XB0N5sA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tcmd:CorporateHeadQuarterSecondLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="As_Of_10_31_2018_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tcmd_CorporateHeadQuarterInitialLeaseMember_xJJ6U3x0WEmAMwTINx8_-w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tcmd:CorporateHeadQuarterInitialLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-10-31</instant>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_RestrictedStockUnitsRSUMember_M8bwANlicUyp4UMd2DYGnw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_Kt6hW1pnpkKs8upy3ghAyw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_RestrictedStockUnitsRSUMember_S_7Y6L1IfkK9ZbacgJL_UQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_PerformanceSharesMember_6HAJIqeyEUaiQToYtAfdMA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_t70kxCemN0GAg3UkgZAlEg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_RestrictedStockUnitsRSUMember_0fyztw3pZ0Ck4S5Rd4qPaQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_PerformanceSharesMember_KBZZhhs7H06AdsnOifKtWg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_MS_n4NomJ0y-fIQkng-UhA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_tcmd_EmployeeStockPurchasePlanMember_HFiQtM9gRESidV_6HnkPUQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">tcmd:EmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_RestrictedStockUnitsRSUMember___2iBiea5UW-ySNG9DDcaw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_PerformanceSharesMember_-DbZ9k1740Ca5jSHVP2-YA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_kgt3EaukG0mwoUflL2zEEA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_tcmd_EmployeeStockPurchasePlanMember_HbQNm2DRHkyAH6uTjVt-JQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">tcmd:EmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_iHQd9y1Ll0yZfYcvXClTQg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_ezS-WnceHUuULd2dRAw4SA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember_5JKHubjwBEGtATw8ASNgfg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember_-A12ocK6ikK5vZqQOstnMw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_J1sCCrsMH0u6FnGeMI5R4A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_cioTeAwoy0-99vBb2rKQAA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_S6WOGUauiEeQCq3MrtpmwQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_BZcJLooymkqAS-KE13NMYA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember_HxSjMzLYL0GA_jEuG3Mbgg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember_LDeEsngrN0i6IXD9s9CV5w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_lCzJt7RwjEm6bt9lS2nvZQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_aw1g2Ytc8EaMEXZk7bgvuQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_nV2lVbHNuEqPk3TL3gUltA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_c8suWCVS-0-8M1lSBp3YCg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember_2JSrBU8CTU-sbg86Nyn9iA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember_oNzNP8Z6IUK36Z0VublMuQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_InD_kSpVWkWpdxtCTAgllA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_0sXoNSfb4k6UBc9GSOK9dQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_s1Ty83wXCEi5WP97Hnx_9w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_ywsQSsjPeUWB7BS4q2DpMQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_VhaGiA5jGkam-INZUFv_Kw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_pGOubrJYkESRGzEtPzQ98A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember_6ILm2QWg9UOZzuoI3haAKA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember_Xt2SUTRSUkC214Je-lK66Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_PvP2spJEI0ixIMkN8EUjGQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_AkhuhltJoEODpOAbZcPGfw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_doHHH7OjnE2HPXOLgRoMBA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_yePD9bKHCUaPvuf6XLfkIA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_J0ghJoQKikuBySgdYFDRRw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ST13CInb-EmfSee4XYZJhQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_bK_LDr7y5EuAEmaMrb2C_g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ElL0pZQUckeSchyAIFmu2g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFourPsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_pgC2_vFXqU2rv8yUNSbAeg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentyFourPsuMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_CdHOtZoixEyQRv5ItF8tFw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentyFivePsuMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_2vjrEsRWU0O0frPl2AhISg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFourPsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_bj5dK8svok-fiQtw1nE6pQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentyFourPsuMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_CkRSapEG_EqdwTx_iFRKgA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentyFivePsuMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_wLPbRsXsKUqKBQpel7Wk9g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyThreePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_vf2apqJLn0annc2r067_Uw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TwoThousandTwentyThreePsuMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:TimeBasedRestrictedStockUnitsRsusMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tcmd:PerformanceBasedStockSettledRestrictedStockUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_J6J7Egu7BE6tb3ShfRSqDA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tcmd:EquityIncentivePlan2016Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_ITvHrCpxsES9UiwjdoAA9A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_6OKFgrMhnE246Gi8WeLlgQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember__aEYDxJTI0upXEUGPGIthQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:LymphedemaProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_Z8PQOK9oAkioGS7j0udc7Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:AirwayClearanceProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember_04wqXpjY3kqN11nx4kIJ-Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:LymphedemaProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_rjm7WIevX0uwcdeheszyGw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:AirwayClearanceProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember__3il7B6sHkqLFAXwRoP1cA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:LymphedemaProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_PmBIY95pjkOcuNBj1xpXXw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:AirwayClearanceProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember_vmnWalIBSki-SkhrcDoGfg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:LymphedemaProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_x8zVkG3hqU-tUogzIiMkmg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tcmd:AirwayClearanceProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="As_Of_6_30_2024_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_q93ziSPyYkK8KDsTbE3dTA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">tcmd:VendorOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2023_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorTwoMember_Zk-3qdQ8LE-wnmIOQpdbDw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">tcmd:VendorTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2023_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_NYbVUZ0gBEaUkVWcQUGNPQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">tcmd:VendorOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="As_Of_5_24_2022_srt_LitigationCaseAxis_tcmd_WeaverLawsuitMember_oZZDdUJeUUKw3KK_HLckag">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:LitigationCaseAxis">tcmd:WeaverLawsuitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-05-24</instant>
        </period>
    </context>
    <context id="Duration_9_8_2021_To_9_8_2021_9hihkujZ3Ey1eqaoAkIhQg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <startDate>2021-09-08</startDate>
            <endDate>2021-09-08</endDate>
        </period>
    </context>
    <context id="Duration_8_2_2016_To_8_2_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_IPOMember_PBovED4p10Ca25HCHdj3XQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:IPOMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2016-08-02</startDate>
            <endDate>2016-08-02</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_7fujnUGjr0OaOiKI4BNzOQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_2_22_2022_To_2_22_2022_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_aOh09yICP0mKOlvyZ_LmxQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tcmd:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-22</startDate>
            <endDate>2022-02-22</endDate>
        </period>
    </context>
    <context id="As_Of_9_8_2021_Cj0wliWsa0a_TQenBtQr8Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <instant>2021-09-08</instant>
        </period>
    </context>
    <context id="Duration_5_25_2023_To_5_25_2023_pzXlr5QgaUOGWFu4gYChbQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <startDate>2023-05-25</startDate>
            <endDate>2023-05-25</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tcmd_CorporateHeadQuarterThirdLeaseMember_609kXUWprkmsMz87p600EA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tcmd:CorporateHeadQuarterThirdLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tcmd_CorporateHeadQuarterSecondLeaseMember_vHpO4Pd9q0Gqf_jPdassSA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tcmd:CorporateHeadQuarterSecondLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2023_sASsshJVu0SedrY75daESg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_rC46QBunc0aHkmL3cYaEgw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="ecd:IndividualAxis">tcmd:WilliamW.BurkeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_QzV45OSiZEmFAc-892qXUw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="ecd:IndividualAxis">tcmd:KristieT.BurnsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pXRqFx4TIUi4vue3wwdTrQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="ecd:IndividualAxis">tcmd:ElaineM.BirkemeyerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_SZhqDQwQQkKluRcxCBVMnw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="ecd:IndividualAxis">tcmd:DanielL.ReuversMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_N-NgVtIWB0uz0iz8rSkamg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="ecd:IndividualAxis">tcmd:WilliamW.BurkeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_lIPhxvLYvEawCTUwfXvdhQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="ecd:IndividualAxis">tcmd:KristieT.BurnsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pYblZjnHZ0elVdb0CekXcQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="ecd:IndividualAxis">tcmd:ElaineM.BirkemeyerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_NAJ6PimfhkC86HlglviaIQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
            <segment>
                <xbrldi:explicitMember dimension="ecd:IndividualAxis">tcmd:DanielL.ReuversMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="As_Of_8_1_2024_kJQukOpKQ0S_h5VfAP5WOw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <instant>2024-08-01</instant>
        </period>
    </context>
    <context id="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001027838</identifier>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <unit id="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">
        <measure>shares</measure>
    </unit>
    <unit id="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Unit_Standard_sqft_mTKkwbEw1UeRa9htF4TtgQ">
        <measure>utr:sqft</measure>
    </unit>
    <unit id="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">
        <measure>pure</measure>
    </unit>
    <unit id="Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g">
        <measure>tcmd:item</measure>
    </unit>
    <unit id="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <us-gaap:CommitmentsAndContingencies
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      id="Hidden_1tyavwc8fEq-qCuLkULnUw"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      id="Hidden__tOmkg7oL0SCellgyBS6wQ"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA"
      xsi:nil="true"/>
    <us-gaap:PreferredStockValue
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      id="Hidden_aplkBkQSjE6hOyG_iywKuA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA"
      xsi:nil="true"/>
    <us-gaap:PreferredStockValue
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      id="Hidden_jfSUXHxoIU2YHiwi68NfPA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA"
      xsi:nil="true"/>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="INF"
      id="Hidden_mygmtbyp6kOUizjoS0rnGg"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23966748</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_ni1p7Qcb1kOn6uu8LJJE3A"
      id="Hidden_eZ3xB74RXU6NziO2vey1sA">P1Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_j4FOz7wOX0mjcAymsnF1pw"
      id="Hidden_kLboFkrwmU241zeI964eiA">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_j4FOz7wOX0mjcAymsnF1pw"
      id="Hidden_y4t_8y311Ue2o7Uk2kMnjA">P7Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="INF"
      id="Hidden_hzJ1TJJS7kexjZS7x06gvw"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23600584</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="INF"
      id="Hidden_m6VDIuHozkiFwKxnQD-O5A"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="INF"
      id="Hidden_jKnWkU9NG0a0wl6nsLxyFg"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      id="Hidden_XGg9ZJfBzkKoHvrqqrYL-A">http://fasb.org/us-gaap/2024#OperatingLeaseRightOfUseAsset</us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      id="Hidden_OHsXZy9RIkGoaAAW7TpWLQ">http://fasb.org/us-gaap/2024#OperatingLeaseRightOfUseAsset</us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      id="Hidden_RYmMhvoXpkm2HlfUhjWQpw">http://fasb.org/us-gaap/2024#OperatingLeaseLiabilityCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      id="Hidden_ONaJcHMlEEmZiK9o-8NxXA">http://fasb.org/us-gaap/2024#OperatingLeaseLiabilityCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      id="Hidden_OCBgoeuof0yCuc0I2N4Lzw">http://fasb.org/us-gaap/2024#OperatingLeaseLiabilityNoncurrent</us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      id="Hidden_ByQg0HmP60itu9FKgG8X2w">http://fasb.org/us-gaap/2024#OperatingLeaseLiabilityNoncurrent</us-gaap:OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList>
    <dei:EntityCentralIndexKey
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tc_jLbQVyO850-_fCS63xh5-g_2_1">0001027838</dei:EntityCentralIndexKey>
    <dei:CurrentFiscalYearEndDate
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tc_J1tD1oOdZEq7vExc6Qxesg_3_1">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tc_axifw0MiU0m6m0sWgnc8fg_4_1">2024</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tc_HkA3uG-Mlk6GBHvgdHoNKg_5_1">Q2</dei:DocumentFiscalPeriodFocus>
    <dei:AmendmentFlag
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Narr_t65HmI50vUKawmJtymhYow">false</dei:AmendmentFlag>
    <tcmd:RentToPurchaseArrangementsRentalPeriod
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_ITvHrCpxsES9UiwjdoAA9A"
      id="Hidden_284Rs177CEejvCyNOpuTsg">P3M</tcmd:RentToPurchaseArrangementsRentalPeriod>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyThreePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheOneMember_vOsaw5u-Ak6kb7sG2WRgDQ"
      decimals="4"
      id="Hidden_uAKG2g7mZk--CJFl0zmvdg"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.3333</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_HFFOBoxAIk6rbkfeI7wbAQ"
      decimals="4"
      id="Hidden_Dc9cTpTp0kahwn8Wwp10OQ"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.3333</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="As_Of_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_gq6lRkcCpEOw2t6Kr9Ai_Q"
      id="Hidden_kHfwq-3Kx0yOTQftBwCcuA">P1Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFourPsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheOneMember_HP3Wi-Gsek-mkuHKXBKZaw"
      decimals="4"
      id="Hidden_zYXFcnFJn0-ybR_mTIZHHw"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.3333</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentySixPsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheThreeMember_PpJE2Z1nt066kkMwprLIzA"
      decimals="4"
      id="Hidden_4ZqkYWgRrk6GX2MYoeozQA"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.3333</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_us-gaap_VestingAxis_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_HFFOBoxAIk6rbkfeI7wbAQ"
      decimals="4"
      id="Hidden_FQbZztpU1EeZnyJ6p9PWGg"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.3333</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg"
      id="Hidden_qxZrAitPFUeRdDk6Iart9A">P1Y10M24D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <dei:DocumentType
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Narr_B1dE8qyfSUOa3naXC6zv2A">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Narr_C1c23Po3p0ezPocy1u7whw">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Narr_5btpHk24C0-lbloZdyVCug">2024-06-30</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Narr_P52nTUoOf0SxzKjLTEhHfw">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Narr_8dQ7FuHf_UGZiO9fIoN38Q">001-37799</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Narr_lcZ6k75vRUmG0kkEbI_wcw">Tactile Systems Technology, Inc.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tc_WoFGZR7-oUaWHCDqr3_GZw_1_0">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityAddressAddressLine1
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Narr_kb3HVTvqJ0aUG7Da9IAfSA">3701 Wayzata Blvd, Suite 300</dei:EntityAddressAddressLine1>
    <dei:EntityTaxIdentificationNumber
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tc_WAQoc00f3UKZKBqQFZPQnQ_1_2">41-1801204</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressCityOrTown
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Narr_iaL4LYrkeEit-XlUNXpFvg">Minneapolis</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Narr_fSOj-_YSjUS7fP3ovwySJA">MN</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Narr_zcTeMSD3jUerheCIjRtLkg">55416</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Narr_6AcLVq35lEGYRLT4pqDeiA">612</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Narr_aAsQ9rtvcUO8ufrNE5jpLQ">355-5100</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tc_v4XCc5KxNEqSFdEqgg1CiQ_2_0">Common Stock, Par Value $0.001 Per Share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tc_c7HhzC5XJUWdrJl9iYzkZw_2_1">TCMD</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tc_G-rHspkd5UGr3QGcFqAk7w_2_2">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Narr_hVXxzsCNuESqYdyazhE3nw">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Narr_-kFpg6XFi02fbJILIz3gwA">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tc_vdh4nfLgw0qtKjl-vwmN2Q_1_3">Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tc_qR-snSwLCkyaMVPdvr-UNw_3_1">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tc_BYpXgP5jD0aG-PmKuBIH5A_3_4">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Narr_rbt_qTecBkqXDJ4Gw8PiAQ">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="As_Of_8_1_2024_kJQukOpKQ0S_h5VfAP5WOw"
      decimals="INF"
      id="Narr_TVOFncAHQki7chAHTs9d1w"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23966748</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_Ftgq93FxLkqQxohEYVQwXg_8_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">73618000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_ingrivZpCE-61YREGN0qLg_8_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">61033000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_T8VQnb-vqESPuwRNIb0vdg_9_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">41935000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_yvlXnSaGCEaH6rOlU6SSMQ_9_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">43173000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:NetInvestmentInLease
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_VTkmIA_Y_EW_yuMMPiJcYA_10_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">13551000</us-gaap:NetInvestmentInLease>
    <us-gaap:NetInvestmentInLease
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_gUYIcPzr3k6Gqzd3LacF3Q_10_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">14195000</us-gaap:NetInvestmentInLease>
    <us-gaap:InventoryNet
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_Uwt-vyl4IUeAHdvo1VAn6Q_11_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">18846000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_aWMlAYjwZkmLiROAvsIqJg_11_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">22527000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_gG6mIc1Py0qFVXtOREfTZg_12_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3909000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_ObaCuWAzbUukGxukviP8iw_12_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">4366000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_cMu56DkEuUeRhWf7Q098DA_13_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">151859000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_OBF9MKmP1UGmPtw2j5LCyg_13_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">145294000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_ddXPOOm7IEKFgf8Lr3DumA_15_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">5691000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_9FzJ1ocBb06iHNlLQ9K2lw_15_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">6195000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_Lu6pKFkKUUSYHGkKEt6D6Q_16_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">17828000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_xZRJ0PJCP0-xXDqrJVD15w_16_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">19128000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_OffEFpvJk0mMoYNGTPlbsA_17_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">44883000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_kL_pW2XqwEGAJBmKNBknxw_17_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">46724000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_00T1hLCLn0aXgY-Ua6W1OQ_18_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">31063000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_BVLAyjY2C0S6jA77lDp_tw_18_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">31063000</us-gaap:Goodwill>
    <tcmd:MedicareAccountsReceivableNonCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_HfqEjG41q0W4qcHld16bGg_19_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">4511000</tcmd:MedicareAccountsReceivableNonCurrent>
    <tcmd:MedicareAccountsReceivableNonCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_Ou-QDX6ic0iIn39avQ-5eQ_19_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">10936000</tcmd:MedicareAccountsReceivableNonCurrent>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_nBnoF5-V1kaKj2-NYQpagg_20_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">19408000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_tt5CfVr6HEy-p3sBdTOreQ_20_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">19378000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_3prEOwWmFkGqmxO8qu-v8g_21_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3541000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_4rkSqzla40SBiOacjr0afQ_21_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2720000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:AssetsNoncurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_n9I2BF1k3UiHjInYempY5w_22_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">126925000</us-gaap:AssetsNoncurrent>
    <us-gaap:AssetsNoncurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_XzeS-sjOJECbm3RhZhLwfQ_22_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">136144000</us-gaap:AssetsNoncurrent>
    <us-gaap:Assets
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_qlsMqprsqE2cErcu2yq3dw_23_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">278784000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_6Jm-ShNhT0StC8XwgPwVXw_23_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">281438000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_pM5v4Cmq8kmx_VVOUUZoAw_26_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">5094000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_JD7334Ktp06jVZsa2bPppw_26_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">6659000</us-gaap:AccountsPayableCurrent>
    <us-gaap:NotesPayableCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_K4g0q6MPTkiyDNseZIzzfw_27_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2956000</us-gaap:NotesPayableCurrent>
    <us-gaap:NotesPayableCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_dNRIXg3Lq0CXIOrlzt3MXg_27_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2956000</us-gaap:NotesPayableCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_m3WgMmuSrUmR4lpCQoMvVQ_28_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">12090000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_HvVP7v9SlU2XOImq3lzcXA_28_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">16789000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_JecPKzzdS0er0vulD6viYA_29_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">6702000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_JSAR_IkcSUi0f_q-dcrQrg_29_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">5904000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_cy-Rhk_eP0CzCx5XFvuL_g_30_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">496000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_MvO8-6mU5kqGIVVZl2XoOQ_30_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1467000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_3dBtGjULLUGeWAMP-iXgOA_31_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2799000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_-pP1_JPokkSpz6iyQzMZhQ_31_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2807000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_6_CaSoo8eEiZt6wqf_-XwQ_32_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">4075000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_Qv-M3rWnvky9i-BELXvqbQ_32_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">4475000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_8yObapxsbUuiU5j7PNZYvA_33_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">34212000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_XRlgI0Jt-k-Z0HCslLSjCg_33_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">41057000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermNotesPayable
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_YsTD6Z1C_EOjNRJBIRT6_A_35_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">24698000</us-gaap:LongTermNotesPayable>
    <us-gaap:LongTermNotesPayable
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_4x6eOmkumkSnFtJ7bBYoxg_35_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">26176000</us-gaap:LongTermNotesPayable>
    <us-gaap:ProductWarrantyAccrualNoncurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_V8yfmo1ipE6Hm22bFZLKHg_36_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1561000</us-gaap:ProductWarrantyAccrualNoncurrent>
    <us-gaap:ProductWarrantyAccrualNoncurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_Wmz90WLXKEKMZ4W6OAfbxQ_36_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1681000</us-gaap:ProductWarrantyAccrualNoncurrent>
    <us-gaap:AccruedIncomeTaxesNoncurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_kYH5TDTFEEyiC6RBaKOXtg_37_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">495000</us-gaap:AccruedIncomeTaxesNoncurrent>
    <us-gaap:AccruedIncomeTaxesNoncurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_Hw7IUzD7uUWTadamSzJSKw_37_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">446000</us-gaap:AccruedIncomeTaxesNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_BJa2JBXDYkWzkMCPZ1zFdw_38_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">17142000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_SX9CPzsfMU-aa8lHnfliAQ_38_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">18436000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_ZzfU5cwNN02Thz86HUA8fA_39_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">43896000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_Rjx6U43BTEmL4ZSrFAR-Pg_39_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">46739000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_BEbX5qv2Jk2hvMU5Vln9tg_40_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">78108000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_pK5y-_xj1EKrLFU1OG7ckg_40_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">87796000</us-gaap:Liabilities>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="INF"
      id="Narr_BgbOYoOW3UCK9QrAdkFTdA"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">0.001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="INF"
      id="Narr_eepzL2Rgf0OZ79CwtI9aGQ"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">0.001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="INF"
      id="Narr_NSqCgCFgLU6OpN4ycRS8cg"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">50000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="INF"
      id="Narr_Y1pKcAx31kKP8UW8CLjVHw"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">50000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="INF"
      id="Narr_LpQhmSSUMU2bk_rcpG-vXQ"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="INF"
      id="Narr_h-MS89sv_0GuWkIaA8zHQA"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="INF"
      id="Narr_jnmFkBptV0aiMHA40XpvPg"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="INF"
      id="Narr_WVsotaZ8TEemkpWYBxY1jg"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="INF"
      id="Narr_b8yXgdCin0uU58t3UELD9A"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">300000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="INF"
      id="Narr_-qaVEPIeQUmHxnLEQ8AsVQ"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">300000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="INF"
      id="Narr_cP1caNQU0U-6qFQa9H9CFw"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23966748</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="INF"
      id="Narr_jBB84j8MGku1TJLWY3jYwg"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23600584</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_S4UY-DTSc0-QncIoMMzrew_46_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">24000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_jC_eLkYwS0yYxTXh827UQg_46_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">24000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapital
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_8AVPAT6btkCSXkj44E0QNQ_47_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">179669000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_CAeIeWeZKkyofpmfhevW7w_47_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">174724000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_Us-4aIm3VkymtUVogmf52Q_48_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">20983000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_Y-Rk1RmMl0Wx8zctfldp1Q_48_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">18894000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_m-1cG8uroEiojdJ0nW9hAg_49_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">200676000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_nc9NNVZWlUmV1_Au6UlJig_49_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">193642000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_unJDc2udiUKuk1PE6epFMA_50_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">278784000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_fbZYpi-9QUKomwPto9U9VA_50_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">281438000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_us-gaap_ProductMember_4y30Rvu4XkSp7uSHLJeLFQ"
      decimals="-3"
      id="Tc_VNrZAZcdZkK06NPcQ4rWhQ_10_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">64267000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_HwKD6hwGZ0equ26Z4poEYQ"
      decimals="-3"
      id="Tc_10-Dphfb9UiFle1168TP4A_10_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">59802000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_us-gaap_ProductMember_QSwcFcYa7UqLcB0gfKdhuQ"
      decimals="-3"
      id="Tc_8NYu98mI0ki3RmW_Hy4vpg_10_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">117574000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_BupDevr4vEaRIVahiBu9bA"
      decimals="-3"
      id="Tc_hdTXJLW88Eq5f9G0X5Afzw_10_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">112593000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_ILVH-vKmt0WIR5ZPg5Cc6w"
      decimals="-3"
      id="Tc_G2yuzlK5Lk-7LYJhoPFjhQ_11_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">8951000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember__lHk1zY_ZkiZZP9bct_GxQ"
      decimals="-3"
      id="Tc_cBtMrjNmU0GhkrN3MwJW5g_11_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">8537000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_XVztWUeXuUaHYxz6GEAC-A"
      decimals="-3"
      id="Tc_T4Z2E1iQ1k-MrKIDUW-iFA_11_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">16732000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_YVbT8PtiBUW0Qj_8Fj5ITw"
      decimals="-3"
      id="Tc_zzsECE_x_EaHTikOKK_C_A_11_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">14592000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_CVRgZLhoN0aRO1jHj4kh9Q_12_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">73218000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_ji7dJB39z0OUZh3geTqqXQ_12_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">68339000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_JGia4FpfT0ufSNGp87Od-A_12_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">134306000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_J3EYgVHluU6apRmw51Ldlg_12_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">127185000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfRevenue
      contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_us-gaap_ProductMember_4y30Rvu4XkSp7uSHLJeLFQ"
      decimals="-3"
      id="Tc_BB4ABCFf1kumiAeFQoZnlQ_14_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">16263000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_HwKD6hwGZ0equ26Z4poEYQ"
      decimals="-3"
      id="Tc_g16-m0l4akOE3LDjKjq-qQ_14_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">16865000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_us-gaap_ProductMember_QSwcFcYa7UqLcB0gfKdhuQ"
      decimals="-3"
      id="Tc_T4UP2hk0I0iNMteeL9Avtw_14_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">31207000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_BupDevr4vEaRIVahiBu9bA"
      decimals="-3"
      id="Tc_TG44S5cF1kGeHxtjl12xJw_14_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">31507000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_ILVH-vKmt0WIR5ZPg5Cc6w"
      decimals="-3"
      id="Tc_9oBrJCKw0ESXaeJcJBQQWQ_15_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2852000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember__lHk1zY_ZkiZZP9bct_GxQ"
      decimals="-3"
      id="Tc_q97Ril7JdEKRl1qj0qtrYA_15_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3175000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_XVztWUeXuUaHYxz6GEAC-A"
      decimals="-3"
      id="Tc_EvWZjYWFUESE4RvJvzUSCw_15_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">5567000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_YVbT8PtiBUW0Qj_8Fj5ITw"
      decimals="-3"
      id="Tc_xScafrhzvUymkrmH4U4RFQ_15_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">5911000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_YM26JppKI0mFFytXuseYpw_16_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">19115000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_vZ7lpPK19UaEp8MEpiae3Q_16_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">20040000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_vyk6NxRjBUWzy_vR5Vi5sw_16_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">36774000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_t5lkCkjTYEW-8J9dGU7zPw_16_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">37418000</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit
      contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_us-gaap_ProductMember_4y30Rvu4XkSp7uSHLJeLFQ"
      decimals="-3"
      id="Tc_DAC7TDQMgk6WH0lTkG1Skg_18_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">48004000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_HwKD6hwGZ0equ26Z4poEYQ"
      decimals="-3"
      id="Tc_46lAeOd1kU-wjGiVnF8zyw_18_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">42937000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_us-gaap_ProductMember_QSwcFcYa7UqLcB0gfKdhuQ"
      decimals="-3"
      id="Tc_z_VaDXrmpE2-OGug-G-xOQ_18_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">86367000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_BupDevr4vEaRIVahiBu9bA"
      decimals="-3"
      id="Tc_TBsb9z2ToEaUHLyidjkqTg_18_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">81086000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_ILVH-vKmt0WIR5ZPg5Cc6w"
      decimals="-3"
      id="Tc_FY1uPmN5Q0CrpyBvHZe2HQ_19_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">6099000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember__lHk1zY_ZkiZZP9bct_GxQ"
      decimals="-3"
      id="Tc_-guLb8dnkEitfM6BeiTIEQ_19_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">5362000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_XVztWUeXuUaHYxz6GEAC-A"
      decimals="-3"
      id="Tc_TKj-OvXwikKu4Sw98XRREg_19_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">11165000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_RentalProductServiceMember_YVbT8PtiBUW0Qj_8Fj5ITw"
      decimals="-3"
      id="Tc_MZ2Op-H5zkyEV4iNvwwupQ_19_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">8681000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_Y6XAQoF8WkOAIcVkNO8sgQ_20_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">54103000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_HCJSzRDjlEiToPl_k1mSkg_20_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">48299000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_HeCYLf7y7UWYHBZu29GjdQ_20_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">97532000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_QZhLSMigd0OuJKSvL2w8qQ_20_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">89767000</us-gaap:GrossProfit>
    <us-gaap:SellingAndMarketingExpense
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_g6fn6TE0_UqRXWzxFLL6Mg_22_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">28608000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_jDgLJe4AV0CxlhZev-JAzw_22_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">28206000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_thkuHkOQ_kOafL2JUHNVAw_22_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">55965000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_9RsTXBmyR0yTLpqlX57YAA_22_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">54508000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_HawaQ3MMqU6BYbQSle38kw_23_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2234000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_ObF4BkKQLkCFdQ6URNLqKw_23_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1833000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_MsquWiZiNUaliqS8ta7zCQ_23_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">4377000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_l1CuIlU_QkG98hEcx01bOw_23_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">4066000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_-mDA5lTK-U-fPmRr2bz57g_24_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">16779000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_BA7GNB8n6E-3gHh7BTPnxg_24_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">14991000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_7K6fla0jRUSU73WF1Rlxfg_24_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">33040000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_rzkLrbCnCUiZRqUk4MGpvw_24_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">30425000</us-gaap:GeneralAndAdministrativeExpense>
    <tcmd:AmortizationOfIntangibleAssetsAndEarnOuts
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_1xPjpwj4mEqCf_aivtGKSQ_25_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">633000</tcmd:AmortizationOfIntangibleAssetsAndEarnOuts>
    <tcmd:AmortizationOfIntangibleAssetsAndEarnOuts
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_9Bezua4dzk-b9nq91NpKSw_25_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1211000</tcmd:AmortizationOfIntangibleAssetsAndEarnOuts>
    <tcmd:AmortizationOfIntangibleAssetsAndEarnOuts
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_Iq7GEIboyUSs7V_dwbZHJA_25_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1265000</tcmd:AmortizationOfIntangibleAssetsAndEarnOuts>
    <tcmd:AmortizationOfIntangibleAssetsAndEarnOuts
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_jEsdFDDWjUWkdVhbPNfHog_25_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2516000</tcmd:AmortizationOfIntangibleAssetsAndEarnOuts>
    <us-gaap:OperatingExpenses
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_obreFw9E-0q-0796v-ASJg_26_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">48254000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_rGTT-u4xI0q74JKU4m_zBw_26_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">46241000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_i-2G3eGmVUS1GEONEIgpRA_26_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">94647000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_o1xsMpY_Yk638pFb4YDkDw_26_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">91515000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_3TX3rGA470KBXguPJfNHCQ_27_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">5849000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_cSRG0b9vo0-zdXKuE9vdrw_27_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2058000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_jCFDdeBQskSi9MZ2lZpPjA_27_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2885000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_o4PNfVJEL0OIM8hPo0FVbg_27_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-1748000</us-gaap:OperatingIncomeLoss>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_BRYTkCtVVkma0AiCaKg1JQ_28_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">225000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_KaepMRx9EEON8WkSEopuhA_28_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-838000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_Uez8YrXXVUGxbBYEWv2K2w_28_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">380000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_brPguPC2hUqmd5yiHB6RuA_28_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-1831000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_177x15nh4UC-n8s4mW5naA_29_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">6074000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_30RcaMotXESwD4ULSqy4Jg_29_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1220000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_zss_jT-RIkCGGS2DzqpeEw_29_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3265000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_0-EiCik4bU-Ic-pvymTGqQ_29_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-3579000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_H9STgXD4JUaTCD0dbWSk2A_30_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1776000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_KLcKhE6qtU6J6DgC_hweuA_30_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1320000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_DzJuejH5-06ZYi_pk6pzow_30_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1176000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_sh_6RnqGVkqyD08lTHV6fA_30_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-1593000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_oIkkiWiuLE6JfywQb14U3A_31_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">4298000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_025FWiDFN0Cvx7ZgEcYNdw_31_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-100000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_IDZMG3IDV0KIw47sI3MivQ_31_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2089000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_UUg-hIjBTUKZ9_lC6N7scw_31_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-1986000</us-gaap:NetIncomeLoss>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="2"
      id="Tc_VirZ7vBZ8kKh_GcNjemkvQ_33_3"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">0.18</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="2"
      id="Tc_TyQ957JJ10itGP4lpWB8Nw_33_6"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">0.00</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="2"
      id="Tc_fTLs6PYfzECMM_we0iF5Jw_33_9"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">0.09</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="2"
      id="Tc_LFhnHb1nIEC4eQDIw42NaA_33_12"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">-0.09</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="2"
      id="Tc_IcBgUHLHgEm_KMiMMlheEQ_34_3"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">0.18</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="2"
      id="Tc_dMzu7fE28UGOaK1kO_FHmg_34_6"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">0.00</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="2"
      id="Tc__7hMDowCwkuaBaGw5CxTsQ_34_9"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">0.09</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="2"
      id="Tc__M2nArjTD0amZNeRaZwZow_34_12"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">-0.09</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="0"
      id="Tc_yqJIRQnbJkeNk_Rr8F75KA_36_3"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23873379</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="0"
      id="Tc_D5vOKR2AHUSecbheDzNLgA_36_6"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23352530</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="0"
      id="Tc_iAW6RyYkcUe9A9rl22tjMg_36_9"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23769604</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="0"
      id="Tc_zEkr9L6QxU2Fc2wONZ4JXw_36_12"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">22323856</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="0"
      id="Tc_ZKqdoyQ_JkaBoBcF9mQ8Mg_37_3"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">24099047</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="0"
      id="Tc_1wJWnP2OnEuLKNmysSDopQ_37_6"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23352530</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="0"
      id="Tc_UQdGI2pzgUmbqDNxRrLbBg_37_9"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">24073986</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="0"
      id="Tc_lkRnDWyWqUCY7wVO-DW9CA_37_12"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">22323856</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:SharesOutstanding
      contextRef="As_Of_3_31_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_B5ujXctiDUy0R8L6FWWa4Q"
      decimals="INF"
      id="Tc_WL3lHLv2O0Kv1cKKDObV6Q_10_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23761897</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_B5ujXctiDUy0R8L6FWWa4Q"
      decimals="-3"
      id="Tc_VD0YdBXjUEWhkIprcE-8Bw_10_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">24000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_MvPSx6K0zkmhTnlK51cAaw"
      decimals="-3"
      id="Tc_Qrv8nFXSwky1gAomsWKnWQ_10_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">176764000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_BXxyhagQ8Ua2U2j-cXk-pw"
      decimals="-3"
      id="Tc_cBe8F3y27k6qU2drCYiOJg_10_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">16685000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2024_s2vwRyEnHUaXSAoq3iPMfA"
      decimals="-3"
      id="Tc_hTNjEPP1o0-Z2jipjW2G2g_10_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">193473000</us-gaap:StockholdersEquity>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_J0ghJoQKikuBySgdYFDRRw"
      decimals="-3"
      id="Tc_940uVYNZ-UCCOS-uvpn_Xg_11_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1860000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_W7H67Pxc00it5_ZN93dKkQ_11_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1860000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_zbzxuLeuX0WA-89ngSGt1A"
      decimals="INF"
      id="Tc_jh8oU2GOsEOmjmtIeEmzTQ_12_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">96944</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_J0ghJoQKikuBySgdYFDRRw"
      decimals="-3"
      id="Tc_YYppp_XaYEy6NPqTU74qnA_12_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_7TCCnFMB9kKujrm5tQq2Vw_12_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_zbzxuLeuX0WA-89ngSGt1A"
      decimals="INF"
      id="Tc_AHPTsKHhb0GoZKKr0Oh45A_13_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">107907</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_J0ghJoQKikuBySgdYFDRRw"
      decimals="-3"
      id="Tc_HnA1P-rcrEStVIM6u6Mx7g_13_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1044000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_Vz5eeYsgtUmSJg-8qVazvw_13_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1044000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_ibbw37t6vEur60DioIQ0Tw"
      decimals="-3"
      id="Tc_6_mXLhrWsE6VCuxqwQ67vg_14_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">4298000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_HZB27Y3QEUOkYD8K27wLnw_14_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">4298000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Ja7L9bPAeEypmuDVmRH_LQ"
      decimals="INF"
      id="Tc_KugY8PzZB0a4dc9LPi1rOA_15_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23966748</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Ja7L9bPAeEypmuDVmRH_LQ"
      decimals="-3"
      id="Tc_2QGto-SLnE6raYxktOqNOQ_15_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">24000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_7qV41BfyZka_83Rd9E4Dnw"
      decimals="-3"
      id="Tc_NJOjx5UmBk6SOnXnaUzgKA_15_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">179669000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_80kahcYOjUqGkQmzsGi_dQ"
      decimals="-3"
      id="Tc_UkwDo5QTp0K7aY2uqSwBiQ_15_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">20983000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_H0FZbcJ5CkGcgCALNK6j2w_15_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">200676000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="As_Of_12_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_CLuecX-YY0KpWQKUfn-hnw"
      decimals="INF"
      id="Tc_37a5fZUalE-shAeXCY5E7w_17_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23600584</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_CLuecX-YY0KpWQKUfn-hnw"
      decimals="-3"
      id="Tc_eQH1sxKcB0Ss0kHLedddHg_17_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">24000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_w04Ejjo6aEC4Vj6ji9xY6Q"
      decimals="-3"
      id="Tc_Cm_s1gM_1Ei_MlPKepEffQ_17_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">174724000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_RtAfzhqQc06IEEJXgu3j4w"
      decimals="-3"
      id="Tc_Kb5CjeZ9S0K5FD9YR4bBaQ_17_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">18894000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_66nIRg2xnESZhwCuP8Y5nw_17_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">193642000</us-gaap:StockholdersEquity>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ST13CInb-EmfSee4XYZJhQ"
      decimals="-3"
      id="Tc_r1jUM2gIW0SXjkfGxbiLjA_18_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3899000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_xtyRrZRPjECiAvlwTZ2X1A_18_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3899000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_S9yXGNhU9UKSi2_fDuRiQQ"
      decimals="INF"
      id="Tc_0hE1AIcgoUGNnJl00HLrPA_19_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">258257</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ST13CInb-EmfSee4XYZJhQ"
      decimals="-3"
      id="Tc_UvjTMAo3jk6WWy-bLPUg9A_19_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_ce3qijg5MkelvFIejqNUHQ_19_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_S9yXGNhU9UKSi2_fDuRiQQ"
      decimals="INF"
      id="Tc_S_I9fLEhIE6x61E5nH4dGA_20_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">107907</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ST13CInb-EmfSee4XYZJhQ"
      decimals="-3"
      id="Tc_dPsVi_vlhUapY7BgR-BvpA_20_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1044000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_VGJz-IGiqEeWHltC67cwZg_20_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1044000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_Yedyqhznj0ylqwvdHw90Pg"
      decimals="-3"
      id="Tc_YHGJoYLcxkGbuIw6drVPHQ_21_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2089000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_3Fju5KMHlU-0qtWhCq8nOQ_21_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2089000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Ja7L9bPAeEypmuDVmRH_LQ"
      decimals="INF"
      id="Tc_Lm61FyH6RkCxTu1jPNzbqg_22_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23966748</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Ja7L9bPAeEypmuDVmRH_LQ"
      decimals="-3"
      id="Tc_BnnMtKBa8kihykhWpJ6WQA_22_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">24000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_7qV41BfyZka_83Rd9E4Dnw"
      decimals="-3"
      id="Tc_e8q_NZFBUUGnBjLZJNby5w_22_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">179669000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2024_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_80kahcYOjUqGkQmzsGi_dQ"
      decimals="-3"
      id="Tc_eX-bSFPK3EO_JqvwAmScGw_22_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">20983000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_pZYshGz0Vkm-VpKP4V3YZQ_22_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">200676000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="As_Of_3_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_kAOIRnbew0qeVvqp_HVpkQ"
      decimals="INF"
      id="Tc_uw9SDyI8cUmNygKgkUZOxg_24_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23235065</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_kAOIRnbew0qeVvqp_HVpkQ"
      decimals="-3"
      id="Tc_CWn4-kEpCEOZrUkyvU34hQ_24_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">23000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_d36bTXgWZkiZ7EHkkq1JSQ"
      decimals="-3"
      id="Tc_k7hrlgCT2kikTt5ay43j6w_24_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">167646000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_6drRJqsWmEiCdYkNFfUBcg"
      decimals="-3"
      id="Tc_W8auS0_Z_0WdAYQaXAtcbw_24_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-11507000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2023_GzRMMUTuf06M6Ru_HEW-nQ"
      decimals="-3"
      id="Tc_3UoML2TiMEu_R83nBdEoHw_24_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">156162000</us-gaap:StockholdersEquity>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_bK_LDr7y5EuAEmaMrb2C_g"
      decimals="-3"
      id="Tc_lzPBxaOvuUGoHQAmOyRpwg_25_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1808000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_CbIBov_qLkGTEsiPjUmgbA_25_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1808000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_e7J9PZx4B0CJsJ37JZBH6A"
      decimals="INF"
      id="Tc_XMUy0jDiFki-72MHu4sD1g_26_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">102421</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_bK_LDr7y5EuAEmaMrb2C_g"
      decimals="-3"
      id="Tc_1hMlbTOZpEmHv-4Wk0yjXw_26_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">11000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_Af7v5_DdQkubYehR3xhNIg_26_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">11000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_e7J9PZx4B0CJsJ37JZBH6A"
      decimals="INF"
      id="Tc_MUytMcauQ02JCkg7TwjIjw_27_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">120816</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_bK_LDr7y5EuAEmaMrb2C_g"
      decimals="-3"
      id="Tc_SgOG8tali0iX5gQOIrMPkw_27_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">882000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_nwcBBkFyRk61eHqsL6eJUQ_27_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">882000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_wxh6APmFhECFWHr4QthFKg"
      decimals="-3"
      id="Tc_nXjUbnwflkuIlvxd5L8y1g_28_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-100000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_0Kp8qFK5FE2bPKN4FXrHyA_28_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-100000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_30z85V5qLkSLDlvX5dRwEg"
      decimals="INF"
      id="Tc__54Z3dPRiUqtVwtaF8zNAg_29_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23458302</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_30z85V5qLkSLDlvX5dRwEg"
      decimals="-3"
      id="Tc_wozlVuDBi0mSHnpNhS0QUA_29_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">23000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_13sgjWDjcUqE7NbRxeVPXA"
      decimals="-3"
      id="Tc_760trkzVjEy1qHveboEn3w_29_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">170347000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OO4DbeD3AEuYBsybMePZxw"
      decimals="-3"
      id="Tc_m6aB-UGdJEK3zHLskTe_jw_29_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-11607000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A"
      decimals="-3"
      id="Tc_XFCGKjyjb0SvGrnvwMpZTQ_29_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">158763000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_yLsLXAjRdk6_unp2ysQ8AQ"
      decimals="INF"
      id="Tc_cCKbFygPMUmFlSDNIQavvA_31_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">20252677</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_yLsLXAjRdk6_unp2ysQ8AQ"
      decimals="-3"
      id="Tc_nDzaP9CO-UacBoH-8SEZrw_31_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">20000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ASCF8Ypet0u4EkCXTQBYNw"
      decimals="-3"
      id="Tc_c8qQ6obS-0qp9R68WEkZzw_31_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">131001000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_j5Wy2RVWcke1i_MukAuSBQ"
      decimals="-3"
      id="Tc_ok3iP7lpcEqnrASeGEOspQ_31_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-9621000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2022_8ruiuWr-P02VR3cPNU5Dgw"
      decimals="-3"
      id="Tc_GcXU2V01RkWLLeMdVVnHwg_31_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">121400000</us-gaap:StockholdersEquity>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ElL0pZQUckeSchyAIFmu2g"
      decimals="-3"
      id="Tc_GVeHqj1nn0Wn2EyTF_wd_Q_32_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3831000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_9HJKhTn520q8guKtCyEuGg_32_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3831000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_DqwGVt8-C0mv1goAlHzaQQ"
      decimals="INF"
      id="Tc_jzwN4pSpWUmyGaOBihcK_Q_33_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">209809</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ElL0pZQUckeSchyAIFmu2g"
      decimals="-3"
      id="Tc_8bRMlW9VIkGiKAKdbfVFdA_33_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">11000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_B0LBXOssj0KlIhPyhQQ_lw_33_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">11000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_DqwGVt8-C0mv1goAlHzaQQ"
      decimals="INF"
      id="Tc_ffp4TAD48EOqeCzM_e9EwQ_34_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">2875000</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_DqwGVt8-C0mv1goAlHzaQQ"
      decimals="-3"
      id="Tc_lvkiKrHn-U6wOnjNHGMCHg_34_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ElL0pZQUckeSchyAIFmu2g"
      decimals="-3"
      id="Tc_bTzE3Qg6a0alWimBsVz4Vw_34_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">34622000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_lVN5waP2ykOi77ebO9wxHA_34_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">34625000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_DqwGVt8-C0mv1goAlHzaQQ"
      decimals="INF"
      id="Tc_QE4YLO_veUmPPBTB9Teg7g_35_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">120816</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ElL0pZQUckeSchyAIFmu2g"
      decimals="-3"
      id="Tc_B6ilZTJor0GwkpqzZs6fCA_35_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">882000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_vyFmzd-bh0GAoOooOaan3w_35_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">882000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_utuRRgp72k2gz9Ez2cPuvg"
      decimals="-3"
      id="Tc_K3fJ_4FBFUCAIzYJmgqXlg_36_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-1986000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_ZBmBLOlLkE63KLpZmLIRGg_36_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-1986000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_30z85V5qLkSLDlvX5dRwEg"
      decimals="INF"
      id="Tc_v6YRILDqv0aB99BfKaOAnw_37_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23458302</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_30z85V5qLkSLDlvX5dRwEg"
      decimals="-3"
      id="Tc_maF7K9gWv0urYhWMVOD6iA_37_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">23000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_13sgjWDjcUqE7NbRxeVPXA"
      decimals="-3"
      id="Tc_PTPfq6B30k6ChzGxFJHJCQ_37_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">170347000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OO4DbeD3AEuYBsybMePZxw"
      decimals="-3"
      id="Tc_-UXExfWQzUmCF0Aavy3s7g_37_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-11607000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A"
      decimals="-3"
      id="Tc_P4ZJfnv0xE-xhG0yFlJ7hA_37_14"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">158763000</us-gaap:StockholdersEquity>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_GlQFo9pAyEO-wfziKYbCEw_8_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2089000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_hjZirQe6L0-LPG_Qq-dFHw_8_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-1986000</us-gaap:ProfitLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_YkKQ8q2CeEeWvautOO3CSQ_10_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3345000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_J4pFOrQsvEyb5R4nlO48Rg_10_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3269000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DeferredIncomeTaxesAndTaxCredits
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_8CgwyiVqvUuHm5Y8NTr8Ew_11_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-30000</us-gaap:DeferredIncomeTaxesAndTaxCredits>
    <us-gaap:ShareBasedCompensation
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_AXJWpZZKsUmE4X-xh61V_Q_12_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3899000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_Ex8fQZatJU2V7qt4RjLfig_12_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3831000</us-gaap:ShareBasedCompensation>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_ld--bbjK0k2vq4ARzPmEgw_13_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-54000</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_t6elkFyrH0mjmxmyOP2Ysw_13_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-3000</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:LiabilitiesFairValueAdjustment
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_Bo7aSamG2kuR1XGnO1i4IQ_14_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-1230000</us-gaap:LiabilitiesFairValueAdjustment>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_pHzMStr4-kyF0_ngAhex7g_16_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-1238000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_UfYRbnkk8UayQOk-zJxM5g_16_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-8273000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <tcmd:IncreaseDecreaseInNetInvestmentInLease
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_yX9-Bewlp02QCSQjh6OTww_17_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-644000</tcmd:IncreaseDecreaseInNetInvestmentInLease>
    <tcmd:IncreaseDecreaseInNetInvestmentInLease
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc__i-lza3hiUCSkhbCnzBIZA_17_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-2911000</tcmd:IncreaseDecreaseInNetInvestmentInLease>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc__WMomdQNF0axky93jaO_dg_18_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-3681000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_PErVG_HBJUqIJfDr16Ue7Q_18_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-2809000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_PfXJKu5vtEGjFs420ElZIA_19_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">922000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_Pw-mxsyJ2UOZ3EXt8oeX8g_19_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3967000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_pJoZnj3TY0qBHXtmdwjBDQ_20_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">364000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_hZwUbQ2I7EyeKIroie1ITw_20_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">697000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <tcmd:IncreaseDecreaseInOperatingLeaseRightOfUseAsset
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_5GXjFgoloUa64VinyI54RA_21_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2000</tcmd:IncreaseDecreaseInOperatingLeaseRightOfUseAsset>
    <tcmd:IncreaseDecreaseInOperatingLeaseRightOfUseAsset
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_VXDPwyvxZUa3hZIX-dj4LQ_21_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-50000</tcmd:IncreaseDecreaseInOperatingLeaseRightOfUseAsset>
    <us-gaap:IncreaseDecreaseInContractWithCustomerAsset
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_R3tv8a7e_0yITl74gTt9mA_22_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-6425000</us-gaap:IncreaseDecreaseInContractWithCustomerAsset>
    <us-gaap:IncreaseDecreaseInContractWithCustomerAsset
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_ZAjKnbcCEkmhHKfGf3E95w_22_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-7631000</us-gaap:IncreaseDecreaseInContractWithCustomerAsset>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_s-y8eFQb30eD2H_1ctSYkA_23_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-1592000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_Yx9P_lXzXkKeiRFO_x6h6g_23_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-696000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_QucdhPn4yE-2LrkIYmgQwA_24_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-4699000</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_j3237q_chkSn5PUknCZ5JA_24_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-3300000</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <tcmd:IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_6k8u9qwy3UKNMHh8Oa90-Q_25_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">300000</tcmd:IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable>
    <tcmd:IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_8RZXf1Glyk-NJexXwx_7mQ_25_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-5954000</tcmd:IncreaseDecreaseInOtherAccruedLiabilitiesAndIncomeTaxesPayable>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_3v3K1Wn-wk-61PrSiFC0jg_26_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">14066000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_bvzrPrqsrU6ei7e5YJuf0Q_26_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">13407000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_fJW6STY68kS3juVYPdCr5A_28_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">982000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_cN-yZEV2V0Waf81xM1Ab3g_28_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1043000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_Jj2vnIj-50eHefCaJlez1g_29_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">12000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireIntangibleAssets
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_iC4y8V1NqEGI1X3B5EFO_w_30_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">57000</us-gaap:PaymentsToAcquireIntangibleAssets>
    <us-gaap:PaymentsToAcquireIntangibleAssets
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_2YNk9feP5UuCe4qJVBRJrQ_30_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">99000</us-gaap:PaymentsToAcquireIntangibleAssets>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_lceXzWExP0GNMGLq6uSLcQ_31_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-1027000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_rAcbqWxiM0qqGhH9753lKA_31_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-1142000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_CGQOJXesv0Wof0XqQLhH2Q_33_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">5000000</us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities>
    <us-gaap:RepaymentsOfNotesPayable
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_3KbCqJxvcEyQrGCMMSx-CQ_34_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1500000</us-gaap:RepaymentsOfNotesPayable>
    <us-gaap:RepaymentsOfNotesPayable
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_0TPts1kwiUqYTk0QuwKQdw_34_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1500000</us-gaap:RepaymentsOfNotesPayable>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_aiQJXQHmGEK37XLIL3p_KQ_35_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_pOHYPBf2Z06KXyNcw_CXiA_35_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">11000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_h_ec3HbELke-ZYE9OIJVzA_36_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1044000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_9Plao6YIhkWf1uu8YTkqPQ_36_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">882000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlans>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_b2TLK3WH40WMhA_QOKpaBg_37_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">34625000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_spwniBHXJkmiap7DYFfQ4A_38_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-454000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_fczS0Zka-ECKJ5gckD5Kmw_38_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">29018000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_LMlOPkGUaEGV9QRDnPR08g_39_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">12585000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_esM5xAizG0G2bg8-hlpv0A_39_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">41283000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_w8QA8hz6fki05NStUuHCqA_40_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">61033000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="As_Of_12_31_2022_8ruiuWr-P02VR3cPNU5Dgw"
      decimals="-3"
      id="Tc_RVrcDca0g0uKoi7Yur2jwg_40_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">21929000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_c4X0qqB-nUmemg6EeW18QA_41_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">73618000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A"
      decimals="-3"
      id="Tc_Huw5_52zW028dc9ySmCB9g_41_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">63212000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:InterestPaidNet
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_-mqpvRcUOk-So2xFW57uLQ_44_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1099000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_SgdqWGlTwU6jLfg5tSMXag_44_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1925000</us-gaap:InterestPaidNet>
    <us-gaap:IncomeTaxesPaid
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_P5rDsEDtPEq9ns7jf6aWDg_45_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2177000</us-gaap:IncomeTaxesPaid>
    <us-gaap:IncomeTaxesPaid
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_5auvx5FXN0eIs2JRwPDlig_45_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2415000</us-gaap:IncomeTaxesPaid>
    <us-gaap:NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_xnKswG-J5kWnsqurxlESgw_46_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">27000</us-gaap:NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1>
    <us-gaap:NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_QVTDK487ak6nzfamcTLDAg_46_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">8000</us-gaap:NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1>
    <us-gaap:NatureOfOperations
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_HWB8RMgJLkqJ6xcIAsEZew">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Note 1. Nature of Business and Operations&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Tactile Systems Technology, Inc. (&#x201c;we,&#x201d; &#x201c;us,&#x201d; &#x201c;our,&#x201d; and the &#x201c;Company&#x201d;) manufactures and distributes medical devices for the treatment of patients with underserved chronic diseases at home.&lt;/span&gt; &lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We provide our Flexitouch&#xae; Plus and Entre&#x2122; Plus systems, which help control symptoms of lymphedema, a chronic progressive medical condition, through our direct sales force for use in the home following receipt of prescriptions from vascular, wound and lymphedema clinics throughout the United States. &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;On September 8, 2021, we acquired the assets of the AffloVest airway clearance business (&#x201c;AffloVest Acquisition&#x201d;). AffloVest is a portable, wearable vest that treats patients with chronic respiratory conditions. We sell this device through home medical equipment and durable medical equipment (&#x201c;DME&#x201d;) providers throughout the United States.&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We were originally incorporated in Minnesota under the name Tactile Systems Technology, Inc. on January 30, 1995. During 2006, we established a merger corporation and subsequently, on July 21, 2006, merged with and into this merger corporation, resulting in our reincorporation as a Delaware corporation. The resulting corporation assumed the name Tactile Systems Technology, Inc. In September 2013, we began doing business as &#x201c;Tactile Medical&#x201d;.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;On August 2, 2016, we closed the initial public offering of our common stock, which resulted in the sale of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;4,120,000&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; shares of our common stock at a public offering price of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$10.00&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; per share. We received net proceeds from the initial public offering of approximately &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$35.4&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million, after deducting underwriting discounts and approximately &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$2.9&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million of transaction expenses.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;On February 27, 2023, we closed on a public offering of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2,875,000&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; shares of our common stock at a public offering price of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$13.00&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; per share. We received net proceeds from this offering of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$34.6&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million after deducting underwriting discounts, commissions, and offering expenses.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Our business is affected by seasonality. In the first quarter of each year, when most patients have started a new insurance year and have not yet met their annual out-of-pocket payment obligations, we experience substantially reduced demand for our products. We typically experience higher revenue in the third and fourth quarters of the year when patients have met their annual insurance deductibles, thereby reducing their out-of-pocket costs for our products, and because patients desire to exhaust their flexible spending accounts at year end. This seasonality applies only to purchases and rentals of our products by patients covered by commercial insurance and is not relevant to Medicare, Medicaid or the Veterans Administration, as those payers either do not have plans that have declining deductibles over the course of the plan year and/or do not have plans that include patient deductibles for purchases or rentals of our products.&lt;/span&gt;&lt;/p&gt;</us-gaap:NatureOfOperations>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="Duration_8_2_2016_To_8_2_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_IPOMember_PBovED4p10Ca25HCHdj3XQ"
      decimals="INF"
      id="Narr_ri4E7q7WskS_sWrUplfhvA"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">4120000</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:SharesIssuedPricePerShare
      contextRef="As_Of_8_2_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_IPOMember_48lQgT0IJUaPjBMtULD0Eg"
      decimals="2"
      id="Narr_OzMpxv9jUUiZoTEQoBGLYA"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">10.00</us-gaap:SharesIssuedPricePerShare>
    <us-gaap:ProceedsFromIssuanceInitialPublicOffering
      contextRef="Duration_8_2_2016_To_8_2_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_IPOMember_PBovED4p10Ca25HCHdj3XQ"
      decimals="-5"
      id="Narr_Ub4g9bbsiUOvaDkfBLHl0A"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">35400000</us-gaap:ProceedsFromIssuanceInitialPublicOffering>
    <tcmd:ExpenseRelatingToInitialPublicOffering
      contextRef="Duration_8_2_2016_To_8_2_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_IPOMember_PBovED4p10Ca25HCHdj3XQ"
      decimals="-5"
      id="Narr_KMSGC1iSqEOCjeC2AgxwPA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2900000</tcmd:ExpenseRelatingToInitialPublicOffering>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="Duration_2_27_2023_To_2_27_2023_us-gaap_SubsidiarySaleOfStockAxis_tcmd_FollowOnPublicOfferingMember_Hqq_A7B_4Ey4takoP09X0w"
      decimals="INF"
      id="Narr_TL_RhTj0-USI6tLQCV65ug"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">2875000</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:SharePrice
      contextRef="As_Of_2_27_2023_us-gaap_SubsidiarySaleOfStockAxis_tcmd_FollowOnPublicOfferingMember_eEYZ3aYCoUqISGDYuO2D3Q"
      decimals="INF"
      id="Narr_eWF8GHfEfEiDezMOMJOEAg"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">13.00</us-gaap:SharePrice>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="Duration_2_27_2023_To_2_27_2023_us-gaap_SubsidiarySaleOfStockAxis_tcmd_FollowOnPublicOfferingMember_Hqq_A7B_4Ey4takoP09X0w"
      decimals="-5"
      id="Narr_-7r5HgrTI0-_a6l07SwHCw"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">34600000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_owec4RpTc02lAsPK55yoNg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Note 2. Basis of Presentation&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States (&#x201c;GAAP&#x201d;) for interim financial reporting and pursuant to the rules and regulations of the SEC. Accordingly, they do not include all of the information and footnotes required by GAAP for complete financial statements. In the opinion of management, all adjustments (including those which are normal and recurring) considered necessary for a fair presentation of the interim financial information have been included.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;The results for the six months ended June 30, 2024, are not necessarily indicative of results to be expected for the year ending December 31, 2024, or for any other interim period or for any future year. The condensed consolidated interim financial statements should be read in conjunction with the audited financial statements and notes thereto included in our Annual Report on Form 10-K for the year ended December 31, 2023.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Principles of Consolidation&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;The accompanying unaudited condensed consolidated financial statements include the accounts of Tactile Systems Technology, Inc. and its wholly owned subsidiary, Swelling Solutions, Inc. All intercompany balances and transactions have been eliminated in consolidation.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:14pt 0pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Use of Estimates&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:14pt 0pt 0pt 0pt;"&gt;&lt;span style="color:#2b2c2b;font-family:'Arial','Helvetica','sans-serif';"&gt;The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and to disclose contingent assets and liabilities at the date of the financial statements and the reported amounts of revenue and expenses during the reporting period. Actual results could differ from those estimates.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"&gt;&lt;span style="color:#2b2c2b;font-family:'Arial','Helvetica','sans-serif';"&gt; &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_LatMrbDOWEOQsczpBv4LJg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States (&#x201c;GAAP&#x201d;) for interim financial reporting and pursuant to the rules and regulations of the SEC. Accordingly, they do not include all of the information and footnotes required by GAAP for complete financial statements. In the opinion of management, all adjustments (including those which are normal and recurring) considered necessary for a fair presentation of the interim financial information have been included.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;The results for the six months ended June 30, 2024, are not necessarily indicative of results to be expected for the year ending December 31, 2024, or for any other interim period or for any future year. The condensed consolidated interim financial statements should be read in conjunction with the audited financial statements and notes thereto included in our Annual Report on Form 10-K for the year ended December 31, 2023.&lt;/span&gt;&lt;/p&gt;</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:ConsolidationPolicyTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_qhuAuvLgSUax5TWgQOitWA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Principles of Consolidation&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;The accompanying unaudited condensed consolidated financial statements include the accounts of Tactile Systems Technology, Inc. and its wholly owned subsidiary, Swelling Solutions, Inc. All intercompany balances and transactions have been eliminated in consolidation.&lt;/span&gt;&lt;/p&gt;</us-gaap:ConsolidationPolicyTextBlock>
    <us-gaap:UseOfEstimates
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_4LdAx0pSPUCqO8aFie-MiA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:14pt 0pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Use of Estimates&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:14pt 0pt 0pt 0pt;"&gt;&lt;span style="color:#2b2c2b;font-family:'Arial','Helvetica','sans-serif';"&gt;The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and to disclose contingent assets and liabilities at the date of the financial statements and the reported amounts of revenue and expenses during the reporting period. Actual results could differ from those estimates.&lt;/span&gt;&lt;/p&gt;</us-gaap:UseOfEstimates>
    <us-gaap:SignificantAccountingPoliciesTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb__II8O_X4w0SUxsAi9hrx_A">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Note 3. Summary of Significant Accounting Policies&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Significant Accounting Policies &#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;There were no material changes in our significant accounting policies during the six months ended June 30, 2024. See Note 3 &#x2013; &#x201c;Summary of Significant Accounting Policies&#x201d; to the consolidated financial statements included in our Annual Report on Form 10-K for the year ended December 31, 2023, for information regarding our significant accounting policies. &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Accounting Pronouncement Not Yet Adopted&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;In November 2023, the Financial Accounting Standards Board (&#x201c;FASB&#x201d;) issued Accounting Standards Update (&#x201c;ASU&#x201d;) No. 2023-07, &#x201c;Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures&#x201d; which requires entities to enhance disclosures around segment reporting. The guidance is effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024, with early adoption permitted. The Company is currently evaluating the effect this standard will have on its consolidated financial statements and related disclosures.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;In December 2023, the FASB issued ASU No. 2023-09, &#x201c;Income Taxes (Topic 740): Improvements to Income Tax Disclosures&#x201d; which requires entities to enhance disclosures around income taxes. The guidance is effective for annual periods beginning after December 15, 2024, with early adoption permitted. The Company is currently evaluating the effect this standard will have on its consolidated financial statements and related disclosures&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;.&lt;/span&gt;&lt;/p&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <tcmd:NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_5HqRONqkOEmd4jE3MzTJ0Q">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Accounting Pronouncement Not Yet Adopted&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;In November 2023, the Financial Accounting Standards Board (&#x201c;FASB&#x201d;) issued Accounting Standards Update (&#x201c;ASU&#x201d;) No. 2023-07, &#x201c;Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures&#x201d; which requires entities to enhance disclosures around segment reporting. The guidance is effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024, with early adoption permitted. The Company is currently evaluating the effect this standard will have on its consolidated financial statements and related disclosures.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;In December 2023, the FASB issued ASU No. 2023-09, &#x201c;Income Taxes (Topic 740): Improvements to Income Tax Disclosures&#x201d; which requires entities to enhance disclosures around income taxes. The guidance is effective for annual periods beginning after December 15, 2024, with early adoption permitted. The Company is currently evaluating the effect this standard will have on its consolidated financial statements and related disclosures&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;.&lt;/span&gt;&lt;/p&gt;</tcmd:NewAccountingPronouncementsNoteYetAdoptedPolicyPolicyTextBlock>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_jB_XDwuByEaiCeJGau0DIA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Note 4. Inventories&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Inventories consisted of the following:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:40.42%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.36%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.34%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:27.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;At June&#160;30,&#160;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:27.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;At December&#160;31,&#160;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Finished goods&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.36%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 6,365&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.34%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 7,979&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Component parts and work-in-process&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 12,481&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 14,548&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total inventories&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 18,846&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 22,527&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_uR5sQb5vQUCnuTOW1sUiBg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:40.42%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.36%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.34%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:27.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;At June&#160;30,&#160;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:27.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;At December&#160;31,&#160;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Finished goods&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.36%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 6,365&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.34%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 7,979&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Component parts and work-in-process&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 12,481&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 14,548&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total inventories&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 18,846&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 22,527&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryFinishedGoods
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_F9CZ_kvV2kuSGAXovyOZWQ_2_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">6365000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_F3Rlo3tjs0ukJAZQQGKpoA_2_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">7979000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryWorkInProcess
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_nkpEPxgxGUi2URNMjNaVpg_3_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">12481000</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryWorkInProcess
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_U1yuqM1_40mRmgsClGreFw_3_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">14548000</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryNet
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_6ENhcCoxSUyMgFKF1WvTMQ_4_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">18846000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_FXhZX5IqdE6w6Q3tMGlsNQ_4_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">22527000</us-gaap:InventoryNet>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_l8_nfugUjk-JJoaZ5AddKw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Note 5. Goodwill and Intangible Assets&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;padding-left:10pt;text-align:justify;text-indent:-10pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Goodwill&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;In the third quarter of fiscal 2021, we completed the AffloVest Acquisition. The purchase price of the AffloVest product line exceeded the net acquisition-date estimated fair value amounts of the identifiable assets acquired and the liabilities assumed by &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$31.1&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million, which was assigned to goodwill.&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Intangible Assets&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Our patents and other intangible assets are summarized as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Weighted-&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:48.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;At June&#160;30,&#160;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Average&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Gross&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amortization&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Carrying&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Accumulated&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Net&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Period&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amount&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amortization&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amount&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Definite-lived intangible assets:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Patents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;12 years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,060&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 290&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 770&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Defensive intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;1 year&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,125&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 993&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 132&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Customer accounts&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 125&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 125&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Customer relationships&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;10 years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 31,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 6,704&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 24,296&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Developed technology&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;8 years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 13,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,322&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 9,678&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Subtotal&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 46,310&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 11,434&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 34,876&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Unamortized intangible assets:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Tradenames&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 9,500&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 9,500&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Patents pending&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 507&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 507&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 56,317&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 11,434&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 44,883&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="display:inline-block;width:205.5pt;"&gt;&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Weighted-&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:48.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;At December&#160;31,&#160;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Average&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Gross&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amortization&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Carrying&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Accumulated&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Net&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Period&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amount&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amortization&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amount&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Definite-lived intangible assets:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Patents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;12 years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,018&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 248&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 770&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Defensive intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;1 year&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,125&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 920&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 205&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Customer accounts&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 125&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 125&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Customer relationships&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;11 years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 31,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 5,511&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 25,489&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Developed technology&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;9 years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 13,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,731&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 10,269&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Subtotal&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 46,268&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 9,535&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 36,733&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Unamortized intangible assets:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Tradenames&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 9,500&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 9,500&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Patents pending&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 491&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 491&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 56,259&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 9,535&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 46,724&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Amortization expense was &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$1.0&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for each of the three months ended June 30, 2024 and 2023, and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$1.9&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for each of the six months ended June 30, 2024 and 2023, of which &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$0.3&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million in each of the three months ended June 30, 2024 and 2023, and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$0.6&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million in each of the six months ended June 30, 2024 and 2023, were recorded in cost of sales revenue. Future amortization expenses are expected as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2024 (July 1 - December 31)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&#160;&#160;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,899&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,708&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,643&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2027&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,635&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2028&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,632&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Thereafter&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 18,359&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 34,876&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:14pt 0pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;In the third quarter of 2023, we performed our annual goodwill impairment test utilizing both the qualitative and quantitative approach described in FASB ASU No. 2021-03, &#x201c;Intangibles&#x2014;Goodwill and Other (Topic 350) &#x2013; Accounting Alternative for Evaluating Triggering Events.&#x201d; Based on the testing using the qualitative approach, it was determined that it was not more likely than not that the fair value of the reporting &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;unit was less than the carrying value. As a result, it was not deemed necessary to proceed to the quantitative test and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;no&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; impairment was recognized.&lt;/span&gt;&lt;/p&gt;</us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:Goodwill
      contextRef="As_Of_9_30_2021_us-gaap_BusinessAcquisitionAxis_tcmd_AfflovestPMember_HBTiVDnaWEqDE5O3XdlyeA"
      decimals="-5"
      id="Narr_nxfDRxNO40KWo3FApVgWEQ"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">31100000</us-gaap:Goodwill>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_Hvvnd3LB6kCRued-nDZ50w">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Weighted-&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:48.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;At June&#160;30,&#160;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Average&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Gross&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amortization&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Carrying&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Accumulated&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Net&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Period&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amount&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amortization&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amount&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Definite-lived intangible assets:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Patents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;12 years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,060&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 290&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 770&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Defensive intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;1 year&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,125&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 993&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 132&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Customer accounts&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 125&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 125&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Customer relationships&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;10 years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 31,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 6,704&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 24,296&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Developed technology&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;8 years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 13,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,322&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 9,678&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Subtotal&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 46,310&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 11,434&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 34,876&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Unamortized intangible assets:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Tradenames&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 9,500&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 9,500&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Patents pending&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 507&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 507&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 56,317&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 11,434&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 44,883&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="display:inline-block;width:205.5pt;"&gt;&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Weighted-&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:48.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;At December&#160;31,&#160;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Average&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Gross&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amortization&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Carrying&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Accumulated&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Net&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Period&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amount&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amortization&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amount&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Definite-lived intangible assets:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Patents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;12 years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,018&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 248&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 770&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Defensive intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;1 year&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,125&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 920&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 205&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Customer accounts&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 125&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 125&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Customer relationships&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;11 years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 31,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 5,511&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 25,489&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Developed technology&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;9 years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 13,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,731&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 10,269&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Subtotal&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 46,268&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 9,535&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 36,733&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Unamortized intangible assets:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Tradenames&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 9,500&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 9,500&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Patents pending&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 491&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 491&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:30.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 56,259&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 9,535&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 46,724&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_t8KDwAfkq0yuvozStzCgug"
      id="Tc_1aOsVoU72EyaP_GmtUkk2g_6_2">P12Y</us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_t8KDwAfkq0yuvozStzCgug"
      decimals="-3"
      id="Tc_mIE6NRy6BkaXuniM4PeAww_6_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1060000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_t8KDwAfkq0yuvozStzCgug"
      decimals="-3"
      id="Tc_1kp9lH3RW0asPB6HuI50Ig_6_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">290000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_t8KDwAfkq0yuvozStzCgug"
      decimals="-3"
      id="Tc_Z4G0_lfGn0yeeiPT7qpuPw_6_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">770000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_jZTyB4NJI0uhYZwjPenLSw"
      id="Tc_g7gIK63tukeeXx1YsBCSoQ_7_2">P1Y</us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_jZTyB4NJI0uhYZwjPenLSw"
      decimals="-3"
      id="Tc_VzBNJ5O79Ui4GVo-lxvK7Q_7_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1125000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_jZTyB4NJI0uhYZwjPenLSw"
      decimals="-3"
      id="Tc_zDsrP4oovku47uB0nOYNkg_7_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">993000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_jZTyB4NJI0uhYZwjPenLSw"
      decimals="-3"
      id="Tc_NC7X1azHTEWzwRXqp6t1MQ_7_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">132000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerContractsMember_Q-B_OUgOLke18AcQjiT36g"
      decimals="-3"
      id="Tc_SbMd4Xb0REmcOnQUky5ufw_8_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">125000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerContractsMember_Q-B_OUgOLke18AcQjiT36g"
      decimals="-3"
      id="Tc_MZCrUFj2yEuMSe8TV_-y8A_8_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">125000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_ukSiPh-Yb0G0BxyoHC-AHA"
      id="Tc_lCuw-qWQJUmxpx3p0Tfs8Q_9_2">P10Y</us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_ukSiPh-Yb0G0BxyoHC-AHA"
      decimals="-3"
      id="Tc_pNJVi4cNSE6xlzgJxqgpuA_9_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">31000000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_ukSiPh-Yb0G0BxyoHC-AHA"
      decimals="-3"
      id="Tc_ba-72GLYbU-I8GVhnM_XSg_9_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">6704000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_ukSiPh-Yb0G0BxyoHC-AHA"
      decimals="-3"
      id="Tc_alDpTfgM30e9ApHhMkiUyw_9_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">24296000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_4CZOskMKuEmcZ4p8j9DBog"
      id="Tc_4YdNM0i9XEi0St7265cNeg_10_2">P8Y</us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_4CZOskMKuEmcZ4p8j9DBog"
      decimals="-3"
      id="Tc_lAcVMINpbESwo8t7H37c4A_10_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">13000000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_4CZOskMKuEmcZ4p8j9DBog"
      decimals="-3"
      id="Tc_v79egrY9lEiINIPiLut0WQ_10_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3322000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="As_Of_6_30_2024_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_4CZOskMKuEmcZ4p8j9DBog"
      decimals="-3"
      id="Tc_4yqox6BJlkWAuw7C8UJvEQ_10_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">9678000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_Rbf4nP5DzE-NoaruQ0Ns3g_11_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">46310000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_mYniypqX20isR9LYhPkA8A_11_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">11434000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_MajFFv_-pUySY295_sLNzQ_11_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">34876000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="As_Of_6_30_2024_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_aYaI0ZySJkuVF2-yuAq33Q"
      decimals="-3"
      id="Tc_yDahptTlH0mZOMGMJtouXA_13_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">9500000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="As_Of_6_30_2024_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_aYaI0ZySJkuVF2-yuAq33Q"
      decimals="-3"
      id="Tc_tnVz6UwjxES7GiJEfIS_mQ_13_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">9500000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="As_Of_6_30_2024_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_StMZ941_S0SJsGikyNLbog"
      decimals="-3"
      id="Tc_7l2hW9RDtEC0xHVzWgRtvQ_14_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">507000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="As_Of_6_30_2024_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_StMZ941_S0SJsGikyNLbog"
      decimals="-3"
      id="Tc_HX90SpvY_kuLPAfRTj4KIQ_14_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">507000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IntangibleAssetsGrossExcludingGoodwill
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_YxF786uRu0elLsOz-zc2ZQ_15_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">56317000</us-gaap:IntangibleAssetsGrossExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_2BpTsl4M4kGnkWG8LUzrLg_15_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">11434000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_O-4OADdvdUqTKAJ1H6U9yg_15_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">44883000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_yv4OD8xh50uBTPZac1RnEg"
      id="Tc_Gq5aLy9tmEiqfK3yFYvgWg_6_2">P12Y</us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_yv4OD8xh50uBTPZac1RnEg"
      decimals="-3"
      id="Tc_3a5369y2JkiqYg5dkgmmng_6_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1018000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_yv4OD8xh50uBTPZac1RnEg"
      decimals="-3"
      id="Tc_QNnZ56RSu0-y3WFxfrnhpw_6_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">248000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_yv4OD8xh50uBTPZac1RnEg"
      decimals="-3"
      id="Tc_uaSM_Kh-dky_YhqylrFzQA_6_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">770000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_D5R03d1RskGByrQebaDTFw"
      id="Tc_sk2FC1K_gk2jeuwq_LJOJA_7_2">P1Y</us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_D5R03d1RskGByrQebaDTFw"
      decimals="-3"
      id="Tc_npVJ5pQrbkS4gi_V-u4mHg_7_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1125000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_D5R03d1RskGByrQebaDTFw"
      decimals="-3"
      id="Tc_QEuV6xJThkCwnrX3RWva2A_7_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">920000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_tcmd_DefensiveIntangibleAssetsMember_D5R03d1RskGByrQebaDTFw"
      decimals="-3"
      id="Tc_zXsxxDgmnUm6651CaoC7ug_7_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">205000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerContractsMember_HPcRxgAafk6zHzL15wsixQ"
      decimals="-3"
      id="Tc_hYOS0OXVJkeGXw0fC54x1A_8_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">125000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerContractsMember_HPcRxgAafk6zHzL15wsixQ"
      decimals="-3"
      id="Tc_Z_s2oOP0QkSD0SzDkChnwg_8_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">125000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_dyycOI63hE-WyBUIQuzh6A"
      id="Tc_AyI1umkh3E6cjmvhQOHgUQ_9_2">P11Y</us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_dyycOI63hE-WyBUIQuzh6A"
      decimals="-3"
      id="Tc_H0CXNz2_n0KwQgWx_J2fzA_9_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">31000000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_dyycOI63hE-WyBUIQuzh6A"
      decimals="-3"
      id="Tc_0o5blc68W0WNY2UMoj5R1Q_9_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">5511000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_dyycOI63hE-WyBUIQuzh6A"
      decimals="-3"
      id="Tc_pislQRmFTkWh7NQLwfWm_w_9_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">25489000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_GOilbr9ot0SA7S3onMVWOA"
      id="Tc_u0G4lsltyEWC2lXwnNcl5A_10_2">P9Y</us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_GOilbr9ot0SA7S3onMVWOA"
      decimals="-3"
      id="Tc_H215k-hfNUivSwVdqL0BYw_10_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">13000000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_GOilbr9ot0SA7S3onMVWOA"
      decimals="-3"
      id="Tc_8mfwKMQFNEqk3DMy3mbIHA_10_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2731000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="As_Of_12_31_2023_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DevelopedTechnologyRightsMember_GOilbr9ot0SA7S3onMVWOA"
      decimals="-3"
      id="Tc_tQ-qSX8xDEOZL2HaEBy5KA_10_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">10269000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_yk4qG4QVFkG5rSkPqZmNng_11_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">46268000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_CtDu9N1xYECeTkwWAF7ptA_11_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">9535000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_Vn8kY6DOsEq_nvPTiv-hrA_11_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">36733000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="As_Of_12_31_2023_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_OpNZmYCr3ku6nMyPAfJBMg"
      decimals="-3"
      id="Tc_5zMDZe58CUWn_Vzcrka0ew_13_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">9500000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="As_Of_12_31_2023_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_OpNZmYCr3ku6nMyPAfJBMg"
      decimals="-3"
      id="Tc_XrZAbSzj6kuGzcOjaJGOlA_13_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">9500000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="As_Of_12_31_2023_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_fBGrTaNO3kG4sW8rUuuf1w"
      decimals="-3"
      id="Tc_aRU2goz2f0KgX8WgzhUicg_14_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">491000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="As_Of_12_31_2023_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentsMember_fBGrTaNO3kG4sW8rUuuf1w"
      decimals="-3"
      id="Tc_SYloMWoqzk66cfXTw5ZK6g_14_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">491000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IntangibleAssetsGrossExcludingGoodwill
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_djX7gjJJhU6Ove-eCZICFg_15_5"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">56259000</us-gaap:IntangibleAssetsGrossExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_ERnPDpQHREWK0vM02o49LQ_15_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">9535000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_tsrdB_VwbUKw59WTRzb4dw_15_11"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">46724000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-5"
      id="Narr_SDpGlqs4YUK76eSW5mfy6Q"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1000000.0</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-5"
      id="Narr_uev5KkiorEuNY81z37VPzA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1000000.0</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-5"
      id="Narr_vQ5eyW9BUUOCANQeyiq1iA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1900000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-5"
      id="Narr_g4RptqAJwUa7e8iraWJfOg"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1900000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_ywsQSsjPeUWB7BS4q2DpMQ"
      decimals="-5"
      id="Narr_fr-wUxguMES9d4v_075oUw"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">300000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_BZcJLooymkqAS-KE13NMYA"
      decimals="-5"
      id="Narr_EbcqINMD30CUGbfnLRdwxg"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">300000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_yePD9bKHCUaPvuf6XLfkIA"
      decimals="-5"
      id="Narr_3TDuTALxcE2Wmh1TIhFwKA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">600000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_aw1g2Ytc8EaMEXZk7bgvuQ"
      decimals="-5"
      id="Narr_G-9K5NREp0OYt3LSWemmsA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">600000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_F4h1Xu_pE0yn41-eqUYY4A">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2024 (July 1 - December 31)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&#160;&#160;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,899&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,708&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,643&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2027&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,635&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2028&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,632&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Thereafter&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 18,359&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.05%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.39%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.78%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 34,876&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_RKCUAeymeUCB7oJwIast1w_2_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1899000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_bzyZRjQk20qioCOZkR7HgQ_3_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3708000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_v0tR_729XkCpWRDOdk9sYw_4_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3643000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_eCKf_YMRVkK0AXEbYBUq6A_5_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3635000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_AJ1zrBA5uUWW3QRL8zzgiA_6_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3632000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <tcmd:FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_vMCLWQcWBEa7A0D0wJAmJA_7_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">18359000</tcmd:FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_DrL3FNEnzkmKouyDuKUl2w_8_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">34876000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:AssetImpairmentCharges
      contextRef="Duration_7_1_2023_To_9_30_2023_W_WVw8V8tUyv9jgci7uifw"
      decimals="-5"
      id="Narr_zW5Z2Qjg0k-ubxiCZigUSw"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">0</us-gaap:AssetImpairmentCharges>
    <tcmd:AccruedExpensesDisclosureCurrentTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_A29J5glKxkSsa7GszbzjLg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Note 6. Accrued Expenses&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Accrued expenses consisted of the following:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:34.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:30.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;At June&#160;30,&#160;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:30.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;At December&#160;31,&#160;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Warranty&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,131&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,357&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Legal and consulting&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,161&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 611&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;In-transit inventory&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,102&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 401&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Travel&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 933&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,038&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Clinical studies&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 339&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 363&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Sales and use tax&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 108&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 183&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 928&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 951&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 6,702&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 5,904&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</tcmd:AccruedExpensesDisclosureCurrentTextBlock>
    <tcmd:ScheduleOfAccruedExpensesTableTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_Cq1O-TLYa0i0QnnuBqN5EA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:34.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:30.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;At June&#160;30,&#160;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:30.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;At December&#160;31,&#160;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Warranty&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,131&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,357&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Legal and consulting&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,161&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 611&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;In-transit inventory&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,102&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 401&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Travel&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 933&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,038&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Clinical studies&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 339&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 363&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Sales and use tax&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 108&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 183&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 928&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 951&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:34.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 6,702&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:27.87%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 5,904&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</tcmd:ScheduleOfAccruedExpensesTableTextBlock>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc__G6eYS7TFUGUlgbuTCuJpw_2_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2131000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_Tzd1IHzDWUqz9QEpRrOf6A_2_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2357000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:AccruedProfessionalFeesCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_PiGiPtTd7UK50AaQ-WiDmg_3_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1161000</us-gaap:AccruedProfessionalFeesCurrent>
    <us-gaap:AccruedProfessionalFeesCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_tbSVUwCJ90qxP-Q_RjHYzQ_3_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">611000</us-gaap:AccruedProfessionalFeesCurrent>
    <tcmd:InTransitInventoryAccruedExpense
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_LA82A_zydEe_7aK4-AwHlQ_4_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1102000</tcmd:InTransitInventoryAccruedExpense>
    <tcmd:InTransitInventoryAccruedExpense
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_1uYrs-SM5EW4znC4szH1Sg_4_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">401000</tcmd:InTransitInventoryAccruedExpense>
    <tcmd:AccruedTravelAndEntertainmentCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_ofz86MCIVE6VCRaifZA9ng_5_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">933000</tcmd:AccruedTravelAndEntertainmentCurrent>
    <tcmd:AccruedTravelAndEntertainmentCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_sN-6ZSlsV0KypnDlw4J-Jg_5_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1038000</tcmd:AccruedTravelAndEntertainmentCurrent>
    <tcmd:AccruedClinicalStudiesExpensesCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_1yU2riyyhUeBPZs19si3oQ_6_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">339000</tcmd:AccruedClinicalStudiesExpensesCurrent>
    <tcmd:AccruedClinicalStudiesExpensesCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_u4s7A-l_l0yuK1r7xMy8KA_6_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">363000</tcmd:AccruedClinicalStudiesExpensesCurrent>
    <tcmd:AccruedSalesAndUseTax
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_l6xyYclvXUmkGz-rMTFNDA_7_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">108000</tcmd:AccruedSalesAndUseTax>
    <tcmd:AccruedSalesAndUseTax
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_jXglDshv90C9vHDPJiwANg_7_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">183000</tcmd:AccruedSalesAndUseTax>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_UAEqVp4oLEij_wkizmmldw_8_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">928000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_UQi73r5hokCiSt54S-mWRw_8_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">951000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_U6shZSTQr0uGGqVRh4OqEg_9_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">6702000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_Crme5rOBqkaq6dUcb-MzTg_9_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">5904000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:ProductWarrantyDisclosureTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_NFIWiTmVZES4qhJaenYMyg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Note&#160;7. Warranty Reserves&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;The activity in the warranty reserve during and as of the end of the reporting periods presented was as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Three Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.48%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Six Months Ended &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June&#160;30,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June&#160;30,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Beginning balance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,836&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 4,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 4,038&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 4,212&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Warranty provision&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 902&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,742&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,900&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Processed warranty claims&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (1,046)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (1,198)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (2,088)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (2,284)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Ending balance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,692&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,828&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,692&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,828&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="color:#ff0000;font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="color:#ff0000;font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Accrued warranty reserve, current&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,131&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,871&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,131&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,871&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Accrued warranty reserve, non-current&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,561&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,957&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,561&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,957&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total accrued warranty reserve&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,692&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,828&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,692&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,828&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:ProductWarrantyDisclosureTextBlock>
    <us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_IjXpPsnvf067AFG4QGQnxQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Three Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.48%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Six Months Ended &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June&#160;30,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:31.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June&#160;30,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:14.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Beginning balance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,836&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 4,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 4,038&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 4,212&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Warranty provision&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 902&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,742&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,900&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Processed warranty claims&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (1,046)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (1,198)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (2,088)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (2,284)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Ending balance&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,692&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,828&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,692&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,828&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="color:#ff0000;font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="color:#ff0000;font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Accrued warranty reserve, current&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,131&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,871&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,131&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,871&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Accrued warranty reserve, non-current&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,561&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,957&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,561&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,957&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:33.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total accrued warranty reserve&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,692&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,828&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,692&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:12.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,828&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="As_Of_3_31_2024_s2vwRyEnHUaXSAoq3iPMfA"
      decimals="-3"
      id="Tc_Qfl7lHLA3k2-HtyHwWBgaQ_4_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3836000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="As_Of_3_31_2023_GzRMMUTuf06M6Ru_HEW-nQ"
      decimals="-3"
      id="Tc_LEjfIC6TOEOWXbAdlAznCQ_4_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">4000000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_2EL9N-fdTEO3gO8M564NDQ_4_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">4038000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="As_Of_12_31_2022_8ruiuWr-P02VR3cPNU5Dgw"
      decimals="-3"
      id="Tc_G9594s-npE-LdHsxwoq8Cg_4_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">4212000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_CsCK5xyOlkiN2kCv1PSqlQ_5_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">902000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_BnEfaIiVAUeLJT8vuPUxDg_5_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1026000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_jHBcN4dMYEGQxdccN1kyaA_5_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1742000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_fMWyeSMRDU-Gkh3Wy2lAWQ_5_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1900000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_On7RnmuPm0u8w4o8V84wvQ_6_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1046000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_f0UEjZYJDUmREpL5Cf_Lgw_6_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1198000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_E0YwAd7RTUyBrFoNJR1HFg_6_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2088000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_OalAkCm3yUai0wpI0BthDw_6_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2284000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_jIAinrTvgEKADSHpdAoplg_7_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3692000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A"
      decimals="-3"
      id="Tc_u1NndFFUaEuM5VWq7fUo2w_7_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3828000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_TbiDYAl_Lkqx6XCwDTa5fA_7_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3692000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A"
      decimals="-3"
      id="Tc_XB8kGTI_fkuM6v32vV7rog_7_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3828000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_R8m5QmVuaUi3ztXenWOEvQ_9_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2131000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A"
      decimals="-3"
      id="Tc_NAxXvEmHsEe9pDnW2ym_Ww_9_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1871000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_Eud-EznC20Cn9Jh8JZTfrw_9_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2131000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A"
      decimals="-3"
      id="Tc_sYSunMcWI0ynpBnGQ9GxjA_9_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1871000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualNoncurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_myO1KigoskKiEuJggA-nZw_10_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1561000</us-gaap:ProductWarrantyAccrualNoncurrent>
    <us-gaap:ProductWarrantyAccrualNoncurrent
      contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A"
      decimals="-3"
      id="Tc_79MeyVfJ6Um_sqfuKbL7gw_10_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1957000</us-gaap:ProductWarrantyAccrualNoncurrent>
    <us-gaap:ProductWarrantyAccrualNoncurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_Wb864p2adkKKoK134JocZw_10_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1561000</us-gaap:ProductWarrantyAccrualNoncurrent>
    <us-gaap:ProductWarrantyAccrualNoncurrent
      contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A"
      decimals="-3"
      id="Tc_EkqAkqAI2kuPZe6102glOQ_10_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1957000</us-gaap:ProductWarrantyAccrualNoncurrent>
    <us-gaap:ProductWarrantyAccrual
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_vIz7tNdr_0mDAkdJeDRlFA_11_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3692000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A"
      decimals="-3"
      id="Tc_5vf12RWqZkOqda5xOEN8LQ_11_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3828000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_z0V6eAn4v0e8XBDSQ6koTQ_11_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3692000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="As_Of_6_30_2023_Q5cQk64b0E-6wISeNtPi9A"
      decimals="-3"
      id="Tc_6guC5xO6g0KJ5egHdC9dfw_11_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3828000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_Dv6yBBs9Dk6qNEJd_-nm0A">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Note 8. Credit Agreement &lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:27pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;On April 30, 2021, we entered into an Amended and Restated Credit Agreement (the &#x201c;Restated Credit Agreement&#x201d;) with the lenders from time to time party thereto, and Wells Fargo Bank, National Association, as Administrative Agent. The Restated Credit Agreement amended and restated in its entirety our prior credit agreement.&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:12pt;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;On September 8, 2021, we entered into a First Amendment Agreement (the &#x201c;Amendment&#x201d;), which amended the Restated Credit Agreement (as amended by the Amendment, the &#x201c;Credit Agreement&#x201d;) with the lenders from time to time party thereto and Wells Fargo Bank, National Association, as administrative agent. The Amendment, among other things, added a &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$30.0&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million incremental term loan to the &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$25.0&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million revolving credit facility provided by the Restated Credit Agreement. The term loan is reflected on our condensed consolidated financial statements as a note payable. The Credit Agreement provides that, subject to satisfaction of certain conditions, we may increase the amount of the revolving loans available under the Credit Agreement and/or add one or more term loan facilities in an amount not to exceed &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$25.0&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million in the aggregate, such that the total aggregate principal amount of loans available under the Credit Agreement (including under the revolving credit facility) does not exceed &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$80.0&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;On September 8, 2021, in connection with the closing of the AffloVest Acquisition, we borrowed the &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$30.0&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million term loan and utilized that borrowing, together with a draw of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$25.0&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million under the revolving credit facility and cash on hand, to fund the purchase price.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;On February 22, 2022, we entered into a Second Amendment Agreement (the &#x201c;Second Amendment&#x201d;), which further amended the Credit Agreement. The Second Amendment modified the maximum leverage ratio, the minimum fixed charge coverage ratio and the minimum consolidated EBITDA covenants under the Credit Agreement, and added a minimum liquidity covenant, through the quarter ended June 30, 2023. The Second Amendment also increased the applicable margin for LIBOR rate loans under the Credit Agreement during the period commencing on the date of the Second Amendment and ending on the last day of the fiscal quarter ending June 30, 2023. Pursuant to the Second Amendment, we made a mandatory principal prepayment of the term loan of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$3.0&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million on February 22, 2022.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;On June 21, 2023, we entered into a Third Amendment Agreement (the &#x201c;Third Amendment&#x201d;) that replaced the interest rate benchmark under the Credit Agreement from LIBOR to the term Secured Overnight Financing Rate (&#x201c;SOFR&#x201d;). All tenors of term SOFR are subject to a credit spread adjustment of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.10%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (&#x201c;Adjusted Term SOFR&#x201d;).&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Following the Third Amendment, the term loan and amounts drawn under the revolving credit facility bear interest, at our option, at a rate equal to (a) the highest of (i) the prime rate, (ii) the federal funds rate plus &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.50%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; and (iii) Adjusted Term SOFR for a one-month tenor plus &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;1%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (the &#x201c;Base Rate&#x201d;) plus an applicable margin or (b) Adjusted Term SOFR for an interest period of one, three or six months, at our option, plus the applicable margin. The applicable margin is &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.75%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; to &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2.25%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; on loans bearing interest at the Base Rate and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;1.75%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; to &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;3.25%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; on loans bearing interest at Adjusted Term SOFR, in each case depending on our consolidated total leverage ratio; except that, pursuant to the Second Amendment and the Third Amendment, during the period commencing on February 22, 2022 and ending on the last day of the fiscal quarter ending June 30, 2023, the applicable margin for LIBOR rate loans and Adjusted Term SOFR loans, as applicable, was &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;3.50%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;. &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;On August 1, 2023, we entered into a Fourth Amendment Agreement (the &#x201c;Fourth Amendment&#x201d;), which further amended the Credit Agreement. The Fourth Amendment, among other things, decreased the commitment fees payable under the revolving credit facility under the Credit Agreement such that the undrawn portions of the revolving credit facility are subject to an unused line fee at a rate per annum from &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.125%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; to &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.200%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;, depending on our consolidated leverage ratio, and eliminated the language providing that the applicable margin for Adjusted Term SOFR loans was &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;3.50%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;, such that the interest rates are in effect as set forth in the above paragraph. The Fourth Amendment also eliminated the liquidity financial covenant and modified the remaining financial covenants to reflect the termination of the temporary covenant relief period that was in place until June 30, 2023 pursuant to the Second Amendment, such that the financial covenants now include a maximum consolidated total leverage ratio covenant, a minimum consolidated EBITDA covenant and a minimum fixed charge coverage ratio covenant. In addition, the Fourth Amendment provided for an &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;additional term loan in the amount of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$8.25&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million, which we used for a paydown of the revolving credit facility. The Fourth Amendment also extended the maturity date of the term loans and revolving credit facility under the Credit Agreement from September 8, 2024, to August 1, 2026.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:27pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';background:#ffffff;"&gt;On December 21, 2023, we made a payment of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';background:#ffffff;"&gt;$16.8&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';background:#ffffff;"&gt;&#160;million to repay in full the outstanding balance on the revolving credit facility.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:27pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;As of June 30, 2024, we had outstanding borrowings of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;$27.8&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; million under the Credit Agreement, comprised entirely of the term loan. At June 30, 2024,&#160;all outstanding borrowings were subject to interest at a rate calculated at Adjusted Term SOFR plus an applicable margin, for an interest rate of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;7.18%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;. The principal of the term loan is required to be repaid in &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;quarterly&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; installments of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;$750,000&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;. Maturities of the term loan for the next three years as of June 30, 2024, were as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:66.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:29.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amount&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2024 (July 1 - December 31)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,500&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 23,250&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 27,750&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Less: Deferred financing fees&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (96)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:66.78%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Net Note Payable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 27,654&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Less: Current portion of note payable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (2,956)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:66.78%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Non-current portion of note payable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 24,698&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Our obligations under the Credit Agreement are secured by a security interest in substantially all of our and our subsidiary&#x2019;s assets and are also guaranteed by our subsidiary. As of June 30, 2024, the Credit Agreement contained a number of restrictions and covenants, including that we maintain compliance with a maximum consolidated total leverage ratio, a minimum fixed charge coverage ratio and a minimum consolidated EBITDA covenant. As of June 30, 2024, we were in compliance with all covenants under the Credit Agreement.&lt;/span&gt;&lt;/p&gt;</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="As_Of_9_8_2021_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_Ck326B7w_0Krb_CSgavUTw"
      decimals="-5"
      id="Narr_6J_HEitCqEWrS92UjkhUJA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">30000000.0</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="As_Of_9_8_2021_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_dQQxQiCes0iLhk0Kq3gSxg"
      decimals="-5"
      id="Narr_RS78ja9Ki0GILtElB9msvw"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">25000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <tcmd:LineOfCreditThresholdContingentIncreaseInBorrowingCapacity
      contextRef="Duration_9_8_2021_To_9_8_2021_9hihkujZ3Ey1eqaoAkIhQg"
      decimals="-5"
      id="Narr_tur5kQkSVkiW2xnhjAPNcw"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">25000000.0</tcmd:LineOfCreditThresholdContingentIncreaseInBorrowingCapacity>
    <tcmd:CreditAgreementTotalAggregatePrincipalAmount
      contextRef="As_Of_9_8_2021_Cj0wliWsa0a_TQenBtQr8Q"
      decimals="-5"
      id="Narr_LV3SlGCwhEeCdX9_GRwkYA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">80000000.0</tcmd:CreditAgreementTotalAggregatePrincipalAmount>
    <us-gaap:LongTermDebt
      contextRef="As_Of_9_8_2021_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_Ck326B7w_0Krb_CSgavUTw"
      decimals="-5"
      id="Narr_DJeyGXf9_U-TAzVtXSwbzQ"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">30000000.0</us-gaap:LongTermDebt>
    <us-gaap:LineOfCredit
      contextRef="As_Of_9_8_2021_Cj0wliWsa0a_TQenBtQr8Q"
      decimals="-5"
      id="Narr_ouERLXMac0-nQnFEntUnNw"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">25000000.0</us-gaap:LineOfCredit>
    <tcmd:DebtInstrumentPaymentOfMandatoryPrincipalPrepayment
      contextRef="Duration_2_22_2022_To_2_22_2022_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_aOh09yICP0mKOlvyZ_LmxQ"
      decimals="-5"
      id="Narr_O94voJsoqky6UXsXJ23DoQ"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3000000.0</tcmd:DebtInstrumentPaymentOfMandatoryPrincipalPrepayment>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_6_21_2023_To_6_21_2023_j1HntEFxG0Kc_Q8vHPNODQ"
      decimals="4"
      id="Narr_GsdjdmVZk0GWKB-E82J-cQ"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.0010</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_6_21_2023_To_6_21_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_FederalFundsEffectiveSwapRateMember_LXTZhCgMxUycJXihNo5auw"
      decimals="4"
      id="Narr_B-Jkl5Or5EO6XKONZU7oNQ"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.0050</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_6_21_2023_To_6_21_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_mnKAkPDAg0iU_Cjx6Srz1g"
      decimals="2"
      id="Narr_BQ2mlYntzUSbOTXXSQWkQw"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.01</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_6_21_2023_To_6_21_2023_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_YgEkMTt31EqSINuv-ZgQOA"
      decimals="4"
      id="Narr_hIWnjhbXtUa954SVaslmNA"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.0075</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_6_21_2023_To_6_21_2023_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_kuB6wHaW0UyfxlfGfAlHWg"
      decimals="4"
      id="Narr_AVz_brjyf0G9mbD8lzqVXA"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.0225</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_6_21_2023_To_6_21_2023_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_PqaXVsMPiky2DLaLBJCwBA"
      decimals="4"
      id="Narr_rEfT2dSlgkS4AeExBUs1-w"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.0175</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_6_21_2023_To_6_21_2023_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_PoIgEsN7SEKhdygmFyVIKg"
      decimals="4"
      id="Narr_-NI_w7jO0UOSm57z9jq7iA"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.0325</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_6_21_2023_To_6_21_2023_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_wZdntAYob0q0QJExjZbHIA"
      decimals="4"
      id="Narr_pr2L72OE8EmvOiABHiKhBA"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.0350</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage
      contextRef="Duration_8_1_2023_To_8_1_2023_srt_RangeAxis_srt_MinimumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_E53nVEuX30Gj6X7CEHcoFw"
      decimals="5"
      id="Narr_3J1Jh_zbYEqrsKi3R8CnPQ"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.00125</us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage>
    <us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage
      contextRef="Duration_8_1_2023_To_8_1_2023_srt_RangeAxis_srt_MaximumMember_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_I9fehpD4L062Ap1QjHh2jg"
      decimals="5"
      id="Narr_n8ibBwXupkW87gJT9rZRHQ"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.00200</us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_8_1_2023_To_8_1_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_H6K4sXhMr0uC9TEZR3dfnw"
      decimals="4"
      id="Narr_-GF5IdwNk0aTzEuBHXF30g"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.0350</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:ProceedsFromIssuanceOfDebt
      contextRef="Duration_8_1_2023_To_8_1_2023_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_eRrazF1Whkq1dksOFvNTeg"
      decimals="-4"
      id="Narr__NcLtYPcFUyZ3CpH3ICuOQ"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">8250000</us-gaap:ProceedsFromIssuanceOfDebt>
    <us-gaap:DebtInstrumentPeriodicPayment
      contextRef="Duration_12_21_2023_To_12_21_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_k0YKbRb_q0SepKmBcV1dwA"
      decimals="-5"
      id="Narr_4XalaccSakuk6OYq3G6VqA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">16800000</us-gaap:DebtInstrumentPeriodicPayment>
    <us-gaap:LongTermDebt
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-5"
      id="Narr_jkkmOY09qEGp6JJvAkHF-A"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">27800000</us-gaap:LongTermDebt>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_SecuredOvernightFinancingRateSofrMember_8BiJD8Q_zEiWo40hjQqQtg"
      decimals="4"
      id="Narr_jkXaJO_CcES-ymlVrSs-xg"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.0718</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentFrequencyOfPeriodicPayment
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_XFKczmT-jUCrLNWGfjcepA"
      id="Narr_uKT4t9_hp0ae8qbMOaoTNA">quarterly</us-gaap:DebtInstrumentFrequencyOfPeriodicPayment>
    <us-gaap:DebtInstrumentPeriodicPayment
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_XFKczmT-jUCrLNWGfjcepA"
      decimals="0"
      id="Narr_eO-rOT4n-UmSOXeRGKSmHQ"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">750000</us-gaap:DebtInstrumentPeriodicPayment>
    <us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_MMwKZOZYzESxuects-C0gg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:66.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:29.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Amount&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2024 (July 1 - December 31)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,500&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 23,250&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 27,750&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Less: Deferred financing fees&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (96)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:66.78%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Net Note Payable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 27,654&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:66.78%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Less: Current portion of note payable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (2,956)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:66.78%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Non-current portion of note payable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:25.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 24,698&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear
      contextRef="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ"
      decimals="-3"
      id="Tc_L61MNMXTfU-mBjAljqj9CQ_2_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1500000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
      contextRef="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ"
      decimals="-3"
      id="Tc_VPj68tbx3kylPTGYA9b_6w_3_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3000000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
      contextRef="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ"
      decimals="-3"
      id="Tc_X7hoU6XKrkyvitHRZm-RLw_4_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">23250000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ"
      decimals="-3"
      id="Tc_KAaH2MSQuk2sAkcRnu5MQA_5_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">27750000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ"
      decimals="-3"
      id="Tc_06a7DCi9pUqk6pE4iq0f7g_6_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">96000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:LongTermDebt
      contextRef="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ"
      decimals="-3"
      id="Tc_ip595T81Y0GtOfluWTbXtA_7_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">27654000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebtCurrent
      contextRef="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ"
      decimals="-3"
      id="Tc_lzXeY4uOj0u7f81wq85GVA_8_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2956000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="As_Of_6_30_2024_us-gaap_CreditFacilityAxis_tcmd_TermLoanMember_wSQfc1QI30S9atOU_HFiGQ"
      decimals="-3"
      id="Tc_JfiSG9H1o0GXqjtKsLIWDw_9_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">24698000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_-zgJNiSAE02zD-l9ewvxpA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Note&#160;9. Commitments and Contingencies&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:10pt;text-align:justify;text-indent:-10pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Lease Obligations&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We lease property and equipment under operating leases, typically with terms greater than &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;12 months&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;, and determine if an arrangement contains a lease at inception. In general, an arrangement contains a lease if there is an identified asset and we have the right to direct the use of and obtain substantially all of the economic benefit from the use of the identified asset. We record an operating lease liability at the present value of lease payments over the lease term on the commencement date. The related right of use (&#x201c;ROU&#x201d;) operating lease asset reflects rental escalation clauses, as well as renewal options and/or termination options. The exercise of lease renewal and/or termination options are at our discretion and are included in the determination of the lease term and lease payment obligations when it is deemed reasonably certain that the option will be exercised. When available, we use the rate implicit in the lease to discount lease payments to present value; however, certain leases do not provide a readily determinable implicit rate. Therefore, we must estimate our incremental borrowing rate to discount the lease payments based on information available at lease commencement.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We classify our leases as buildings, vehicles or computer and office equipment and do not separate lease and non-lease components of contracts for any of the aforementioned classifications. In accordance with applicable guidance, we do not record leases with terms that are less than one year on the Condensed Consolidated Balance Sheets.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;None of our lease agreements contain material restrictive covenants or residual value guarantees.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;"&gt;Buildings&lt;/i&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We lease certain office and warehouse space at various locations in the United States where we provide services. These leases are typically greater than one year with fixed, escalating rents over the noncancelable terms and, therefore, ROU operating lease assets and operating lease liabilities are recorded on the Condensed Consolidated Balance Sheets, with rent expense recognized on a straight-line basis over the term of the lease. The remaining lease terms vary from approximately &lt;/span&gt;&lt;span style="-sec-ix-hidden:Hidden_kHfwq-3Kx0yOTQftBwCcuA;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;one&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; to &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;seven years&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; as of June 30, 2024.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We entered into a lease (&#x201c;initial lease&#x201d;) in October 2018, for approximately &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;80,000&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; square feet of office space for our new corporate headquarters in Minneapolis, Minnesota. In December 2018, we amended the initial lease to add approximately &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;29,000&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; square feet of additional office space, which is accounted for as a separate lease (&#x201c;second lease&#x201d;) in accordance with ASU No. 2016-02, &#x201c;Leases&#x201d; (Topic 842) (&#x201c;ASC 842&#x201d;). In December 2019, we further amended the lease which extended the expiration date of the initial lease, extended the expiration date of and added approximately &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;4,000&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; square feet to the second lease, as well as added approximately &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;37,000&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; square feet of additional office space, accounted for as a separate lease (&#x201c;third lease&#x201d;) in accordance with ASC 842. The portion of the space covered under the initial lease was placed in service in September 2019. The portion of the space covered under the second lease commenced in September 2020. Finally, the portion of the space covered under the third lease commenced in September 2021. The three portions were recognized as an operating lease and included in the ROU operating lease assets and operating lease liabilities on the Condensed Consolidated Balance Sheets.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;i style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;"&gt;Computer and Office Equipment&lt;/i&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We also have operating lease agreements for certain computer and office equipment. The remaining lease terms as of June 30, 2024, ranged from less than &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;one year&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; to approximately &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;four years&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; with fixed monthly payments that are included in the ROU operating lease assets and operating lease liabilities. The leases provide an option to purchase the related equipment at fair market value at the end of the lease. The leases will automatically &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;renew&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; as a month-to-month rental at the end of the lease if the equipment is not purchased or returned.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Lease Position, Undiscounted Cash Flow and Supplemental Information&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;The table below presents information related to our ROU operating lease assets and operating lease liabilities that we have recorded:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:17.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;At June&#160;30,&#160;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:21.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;At December&#160;31,&#160;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="-sec-ix-hidden:Hidden_XGg9ZJfBzkKoHvrqqrYL-A;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;Right of use operating lease assets&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 17,828&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 19,128&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Operating lease liabilities:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="-sec-ix-hidden:Hidden_RYmMhvoXpkm2HlfUhjWQpw;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;Current&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,799&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,807&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="-sec-ix-hidden:Hidden_OCBgoeuof0yCuc0I2N4Lzw;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;Non-current&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 17,142&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 18,436&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 19,941&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 21,243&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Operating leases: &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Weighted average remaining lease term&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;6.3&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;6.7&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Weighted average discount rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;4.3%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;4.3%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;vertical-align:top;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:41.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Six Months Ended June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;width:17.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;width:21.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Supplemental cash flow information for our operating leases:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:16.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:19.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Cash paid for operating lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,743&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,710&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Non-cash right of use assets obtained in exchange for new operating lease obligations&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;The table below reconciles the undiscounted cash flows for the periods presented to the operating lease liabilities recorded on the Condensed Consolidated Balance Sheet for the periods presented:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2024 (July 1 - December 31)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;  &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,791&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,645&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,716&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2027&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,210&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2028&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,185&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Thereafter&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 6,943&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total minimum lease payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 22,490&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Less: Amount of lease payments representing interest&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (2,549)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Present value of future minimum lease payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 19,941&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Less: Current obligations under operating lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (2,799)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Non-current obligations under operating lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 17,142&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Operating lease costs were &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$0.9&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for each of the three months ended June 30, 2024 and 2023. Operating lease costs were &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$1.8&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for each of the six months ended June 30, 2024 and 2023. &#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;padding-left:10.1pt;text-align:justify;text-indent:-10.1pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Major Vendors&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We had purchases from &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;one&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; vendor that accounted for &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;17%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; of our total purchases for the three months ended June 30, 2024, and purchases from &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;one&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; vendor that accounted for &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;20%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; of our total purchases for the six months ended June 30, 2024. We had purchases from &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;two&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; vendors that accounted for &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;30%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; of our total purchases for the three months ended June 30, 2023, and purchases from &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;one&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; vendor that accounted for &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;24%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; of our total purchases for the six months ended June 30, 2023. &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;padding-left:10.1pt;text-align:justify;text-indent:-10.1pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Purchase Commitments&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We issued purchase orders prior to June 30, 2024, totaling &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$28.8&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for goods that we expect to receive within the next year.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Retirement Plan&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We maintain a 401(k) retirement plan for our employees in which eligible employees can contribute a percentage of their pre-tax compensation. We recorded an expense related to our discretionary contributions to the 401(k) plan of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$0.4&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$0.3&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for the three months ended June 30, 2024 and 2023, respectively, and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$1.1&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$0.7&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for the six months ended June 30, 2024 and 2023, respectively.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Legal Proceedings&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;F&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;rom time to time, we are subject to various claims and legal proceedings arising in the ordinary course of business. Regardless of outcome, litigation can have an adverse impact on us because of defense and settlement costs, diversion of management resources and other factors.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;On May 24, 2022, a stockholder derivative lawsuit was filed in the United States District Court for the District of Minnesota, purportedly on behalf of the Company against certain of our present and former officers and directors and the Company (as a nominal defendant), captioned Jack Weaver v. Moen, et al., File No. 0:22-cv-01403-NEB-BRT (the &#x201c;Weaver Lawsuit&#x201d;). The Weaver Lawsuit generally arises out of the same subject matter as a previously settled securities class action captioned Brian Mart v. Tactile Sys. Tech., Inc., et al., File No. 0:20-cv-02074-NEB-BRT (D. Minn.) (the &#x201c;Mart Lawsuit&#x201d;), which alleged, inter alia, that we and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;eight&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; of our former officers and directors made materially false or misleading statements about our business, operational and compliance policies. The Weaver Lawsuit alleges the following claims under the Exchange Act and common law: (1) that the director defendants made materially false or misleading public statements in proxy statements in violation of Section 14(a) of the Exchange Act; (2) that the director defendants&#x2019; stock and option awards should be rescinded under Section 29(b) of the Exchange Act; (3) that the officer defendants&#x2019; employment contract compensation should be rescinded under Section 29(b) of the Exchange Act; (4) that certain officer defendants are liable for contribution arising out of any liability incurred in the Mart Lawsuit, under Sections 10(b) and 21D of the Exchange Act; (5) that the individual defendants breached their fiduciary duties; and (6) that the individual defendants were unjustly enriched. The Weaver Lawsuit seeks unspecified damages. In August 2022, the matter was transferred to the United States District Court for the District of Delaware by order granting the Parties Stipulation to Transfer. On February 10, 2023, we filed a motion to dismiss the action. The plaintiff filed an Amended Complaint on March 3, 2023. On March 31, 2023, we filed a motion to dismiss the Amended Complaint. On July 31, 2023, the plaintiff filed a Joint Notice of Preliminary Settlement indicating that the parties had reached a non-binding settlement-in-principal on most of the material terms that would resolve all claims between the parties and requested that the Court temporarily stay all deadlines, hearings, and conferences while the parties continued to finalize settlement&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;. &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;On June 6, 2024, we entered into a Stipulation of Settlement in the Weaver Lawsuit. On June 7, 2024, the plaintiff filed an unopposed motion for preliminary approval of the settlement. &#160;On June 27, 2024, the Court entered an order granting the motion for preliminary approval of the settlement. &#160;The Court has scheduled a settlement hearing for August 28, 2024 to consider whether to grant final approval to the settlement. Pursuant to the settlement, we will adopt, implement and maintain certain corporate governance reforms and have agreed to pay approximately &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$0.5&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million in fees and expenses related to this lawsuit. The settlement does not constitute an admission of liability or wrongdoing by us or any of our current or former directors or officers.&lt;/span&gt;&lt;/p&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="As_Of_6_30_2024_srt_RangeAxis_srt_MinimumMember_4VKZ5hWU0E-xw8tULb1H6A"
      id="Narr_QFfl8KhIj0SG-wfb3dqWVA">P12M</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="As_Of_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_2edHshgIxU-CWhd6nxQIGw"
      id="Narr_SymIzgTRTUawAe6AKgSU6Q">P7Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:AreaOfLand
      contextRef="As_Of_10_31_2018_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tcmd_CorporateHeadQuarterInitialLeaseMember_xJJ6U3x0WEmAMwTINx8_-w"
      decimals="0"
      id="Narr_aMN82SbEnEma2WUws3WIAA"
      unitRef="Unit_Standard_sqft_mTKkwbEw1UeRa9htF4TtgQ">80000</us-gaap:AreaOfLand>
    <us-gaap:AreaOfLand
      contextRef="As_Of_12_31_2018_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tcmd_CorporateHeadQuarterSecondLeaseMember_oRe1amb7dkiTsF0XB0N5sA"
      decimals="INF"
      id="Narr_t_dA5o67dE-Iy4OFW4TiNg"
      unitRef="Unit_Standard_sqft_mTKkwbEw1UeRa9htF4TtgQ">29000</us-gaap:AreaOfLand>
    <tcmd:AdditionalOfficeSpaceAdded
      contextRef="As_Of_12_31_2019_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tcmd_CorporateHeadQuarterSecondLeaseMember_vHpO4Pd9q0Gqf_jPdassSA"
      decimals="INF"
      id="Narr_8NHgqGVCyk2n4jGcxezaRQ"
      unitRef="Unit_Standard_sqft_mTKkwbEw1UeRa9htF4TtgQ">4000</tcmd:AdditionalOfficeSpaceAdded>
    <tcmd:AdditionalOfficeSpaceAdded
      contextRef="As_Of_12_31_2019_us-gaap_PropertyPlantAndEquipmentByTypeAxis_tcmd_CorporateHeadQuarterThirdLeaseMember_609kXUWprkmsMz87p600EA"
      decimals="INF"
      id="Narr_Ooieurn60ki3FOlMjgU1kQ"
      unitRef="Unit_Standard_sqft_mTKkwbEw1UeRa9htF4TtgQ">37000</tcmd:AdditionalOfficeSpaceAdded>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="As_Of_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_EquipmentMember_rM3vcdramEuwLITsT_ygxA"
      id="Narr_UNrUmXVKn0SBTgaL2_SRyQ">P1Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="As_Of_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_EquipmentMember_htm7g8S9PkSgqk49CCeQcg"
      id="Narr_BXomPptH7UGNPP4YrChFyg">P4Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:LesseeOperatingLeaseExistenceOfOptionToExtend
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_EquipmentMember_wdOC90gkNU-QpUIRQiTFsg"
      id="Narr_g7oa6la4V065JkzzBewHXQ">true</us-gaap:LesseeOperatingLeaseExistenceOfOptionToExtend>
    <tcmd:AssetsAndLiabilitiesLesseeTableTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_DTGUEBArZkSAaNuJvJZYaw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:17.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;At June&#160;30,&#160;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:21.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;At December&#160;31,&#160;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="-sec-ix-hidden:Hidden_XGg9ZJfBzkKoHvrqqrYL-A;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;Right of use operating lease assets&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 17,828&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 19,128&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Operating lease liabilities:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="-sec-ix-hidden:Hidden_RYmMhvoXpkm2HlfUhjWQpw;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;Current&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,799&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,807&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="-sec-ix-hidden:Hidden_OCBgoeuof0yCuc0I2N4Lzw;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;Non-current&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 17,142&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 18,436&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 19,941&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 21,243&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Operating leases: &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Weighted average remaining lease term&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;6.3&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;6.7&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Weighted average discount rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;4.3%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;4.3%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';margin-left:0pt;vertical-align:top;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:41.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Six Months Ended June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;width:17.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;width:21.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Supplemental cash flow information for our operating leases:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:16.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:19.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:56.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Cash paid for operating lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,743&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,710&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:56.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Non-cash right of use assets obtained in exchange for new operating lease obligations&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:19.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</tcmd:AssetsAndLiabilitiesLesseeTableTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_NTtmYkV9HUmj9XDZvcP1oQ_2_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">17828000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_TbRIjDdjxEOr9ENq5D9srg_2_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">19128000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_408J4uIEyE-Q9Eu_38Nulw_5_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2799000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_jz0wPCHGKkCO_-QJtbne8w_5_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2807000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_KLctc0TVhEy8KLVcG1Wphg_6_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">17142000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_8lzSzVK71kyB_7uul11uaA_6_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">18436000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_a3hyGKOmJ06Hv6gCAl2pfQ_7_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">19941000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiability
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="-3"
      id="Tc_TSXdPwxNtUOusfNP5rtg7Q_7_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">21243000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      id="Narr_4gb1d1YUhUGbVyvXLj0QOg">P6Y3M18D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      id="Narr_3tAEGF_o9ECEQhk2nxkjgQ">P6Y8M12D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="3"
      id="Tc_kSt3uGAaVkqPXxSDM8CilQ_11_3"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.043</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="As_Of_12_31_2023_sASsshJVu0SedrY75daESg"
      decimals="3"
      id="Tc_fYypH8H5dU6uH3cgM6wpPw_11_6"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.043</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeasePayments
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_1B7c0rGBm0-mHlG5k3jbdQ_16_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1743000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_vGP7Am29oEOMULBzUvZOvA_16_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1710000</us-gaap:OperatingLeasePayments>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_LLgZyra_u0Cyxuid7s441A_17_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:OperatingLeaseLeaseIncomeTableTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_iyvhHn_qfEqyWja2bSKGEw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2024 (July 1 - December 31)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;  &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,791&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,645&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,716&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2027&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,210&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2028&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,185&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Thereafter&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 6,943&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total minimum lease payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 22,490&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Less: Amount of lease payments representing interest&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (2,549)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Present value of future minimum lease payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 19,941&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Less: Current obligations under operating lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (2,799)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:64.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Non-current obligations under operating lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:4.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 17,142&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:OperatingLeaseLeaseIncomeTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_mzzw155oVEWa8kC1JRJ5iQ_2_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1791000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_lKFYoEKHhUOffoKIQd9LBQ_3_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3645000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_ylGnu_ueREu8_AQp2FohJA_4_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3716000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_QoEGMNIRVUW2YVcPF17EuA_5_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3210000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_Fz1VxCHptkO1QEMcseTydw_6_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3185000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <tcmd:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_mBGchbemZEGr0ezYFwPbbQ_7_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">6943000</tcmd:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_JUSCKD7a5E2uehU3qbqqiQ_8_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">22490000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_7090ujHTF0imP2iIGB9kUA_9_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2549000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_hWdSA2hkSk6khgo_m_szzg_10_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">19941000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_K5XVfrWuiUqPHR0g5HPN2g_11_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2799000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-3"
      id="Tc_nJKWKm2S8EaJK0ZJJApkTQ_12_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">17142000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-5"
      id="Narr_k_IvjkXr00aAoVnYqwKjkA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">900000</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-5"
      id="Narr_7GPuHWJxTkeTOKOEq0R0jQ"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">900000</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-5"
      id="Narr_4QyC8mS5Gk-o2ZnA0Bdf6Q"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1800000</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-5"
      id="Narr_TTPcbmTXJ0Wooqzf5yTGEw"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1800000</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <tcmd:NumberOfVendors
      contextRef="As_Of_6_30_2024_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_q93ziSPyYkK8KDsTbE3dTA"
      decimals="INF"
      id="Narr_ZUbYcG--uEqPk1E6lpOLHg"
      unitRef="Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g">1</tcmd:NumberOfVendors>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_dBewljXhJECxvJt1x7cYQw"
      decimals="2"
      id="Narr_vn3GzWYQRUO0MbHMNoRuIg"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.17</us-gaap:ConcentrationRiskPercentage1>
    <tcmd:NumberOfVendors
      contextRef="As_Of_6_30_2024_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_q93ziSPyYkK8KDsTbE3dTA"
      decimals="INF"
      id="Narr_DYPGnf312E2Q9-MRqSnFPg"
      unitRef="Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g">1</tcmd:NumberOfVendors>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_QflaMpPnkUONvmHfNuQCTQ"
      decimals="2"
      id="Narr_Hg3lQf3-00Gzt8uUkIuzew"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.20</us-gaap:ConcentrationRiskPercentage1>
    <tcmd:NumberOfVendors
      contextRef="As_Of_6_30_2023_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorTwoMember_Zk-3qdQ8LE-wnmIOQpdbDw"
      decimals="INF"
      id="Narr_EMtiAKBsn0CeX0ypImmKRg"
      unitRef="Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g">2</tcmd:NumberOfVendors>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorTwoMember_GkfxBxGEVUut5MpmfyrRDA"
      decimals="2"
      id="Narr_-OZj-imWKkqQwDGFg0Qq6w"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.30</us-gaap:ConcentrationRiskPercentage1>
    <tcmd:NumberOfVendors
      contextRef="As_Of_6_30_2023_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_NYbVUZ0gBEaUkVWcQUGNPQ"
      decimals="INF"
      id="Narr_rq94cR27wk2h51WQhFIQ7g"
      unitRef="Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g">1</tcmd:NumberOfVendors>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_CostOfGoodsTotalMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_SupplierConcentrationRiskMember_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_tcmd_VendorOneMember_9Pm2ilF9M0mdgNadpPa8EA"
      decimals="2"
      id="Narr_-2BKN1GDcUG20F3Zw_La6w"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.24</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:PurchaseObligationDueInNextTwelveMonths
      contextRef="As_Of_6_30_2024_NgZhJqb5Ska1C0tYPbC61g"
      decimals="-5"
      id="Narr_YbRosXtITEafjI4FUiJuOw"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">28800000</us-gaap:PurchaseObligationDueInNextTwelveMonths>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_b2t1gr1hEkOEJlucH2wJQw"
      decimals="-5"
      id="Narr_2jAdimDlYEawc33nIeA3Zg"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">400000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_rnIYNziCZ0u25WElTrXIVw"
      decimals="-5"
      id="Narr_a-zPF-Sj30mZh-_Z_xwb_Q"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">300000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_LH9XYxL0EkuZW5wT_nzfpg"
      decimals="-5"
      id="Narr_iBWVO_iWiU2r5qGX274mQg"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1100000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_RetirementPlanNameAxis_tcmd_DefinedContribution401kRetirementPlanMember_NttyosrxakeQDzyHbHGWeg"
      decimals="-5"
      id="Narr_e2DOJb09g0GLW6uLSVrc0g"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">700000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <tcmd:NumberOfOfficerAndDirectors
      contextRef="As_Of_5_24_2022_srt_LitigationCaseAxis_tcmd_WeaverLawsuitMember_oZZDdUJeUUKw3KK_HLckag"
      decimals="INF"
      id="Narr_ogYw2Tk5GEyH6a_HzJUQqQ"
      unitRef="Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g">8</tcmd:NumberOfOfficerAndDirectors>
    <us-gaap:LitigationSettlementLoss
      contextRef="Duration_6_27_2024_To_6_27_2024_srt_LitigationCaseAxis_tcmd_WeaverLawsuitMember_4n-_hANt2UG_nH4WTTUyNA"
      decimals="-5"
      id="Narr_OboOncIt4ESd5StwTqLRzA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">500000</us-gaap:LitigationSettlementLoss>
    <us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_zqhkfSWOSEC_tRBmCnDisw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Note&#160;10. Stockholders' Equity&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;padding-left:10.1pt;text-align:justify;text-indent:-10.1pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Our 2016 Equity Incentive Plan (the &#x201c;2016 Plan&#x201d;) authorizes us to grant stock options, stock appreciation rights, restricted stock, stock units and other stock-based awards to employees, non-employee directors and certain consultants and advisors. There were up to &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;4,800,000&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; shares of our common stock initially reserved for issuance pursuant to the 2016 Plan. The 2016 Plan provides that the number of shares reserved and available for issuance under the 2016 Plan will automatically increase annually on January 1 of each calendar year, commencing in 2017 and ending on and including January 1, 2026, by an amount equal to the lesser of: (a) &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;5%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; of the number of common shares of stock outstanding as of December 31 of the immediately preceding calendar year, or (b) &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2,500,000&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; shares; provided, however, that our Board of Directors may determine that any annual increase be a lesser number. In addition, all awards granted under our 2007 Omnibus &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Stock Plan and our 2003 Stock Option Plan that were outstanding when the 2016 Plan became effective and that are forfeited, expired, cancelled, settled for cash or otherwise not issued, will become available for issuance under the 2016 Plan. Pursuant to the automatic increase feature of the 2016 Plan, &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;1,180,019&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; shares were added as available for issuance thereunder on January 1, 2024. Our Board of Directors exercised its prerogative to forego the automatic increase on January 1, 2023. As of June 30, 2024, &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;6,615,454&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; shares were available for future grant pursuant to the 2016 Plan.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Upon adoption and approval of the 2016 Plan, all of our previous equity incentive compensation plans were terminated. However, existing awards under those plans continue to vest in accordance with the original vesting schedules and will expire at the end of their original terms.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We recorded stock-based compensation expense of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$1.9&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$1.8&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for the three&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;months ended June 30, 2024 and 2023, respectively and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$3.9&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$3.8&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for the six months ended June 30, 2024 and 2023, respectively. This expense was allocated as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.82%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.2%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.28%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.26%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.22%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.48%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Three Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Six Months Ended &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June&#160;30,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June&#160;30,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:50.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:50.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Cost of revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 103&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 121&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 186&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 224&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Sales and marketing expenses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 606&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 810&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.26%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,344&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,562&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:50.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Research and development expenses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 48&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 44&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 81&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 93&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Reimbursement, general and administrative expenses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,103&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 833&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,288&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,952&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:50.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total stock-based compensation expense&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.82%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,860&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,808&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,899&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.22%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,831&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Stock Options&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;Stock options issued to participants other than non-employees typically vest over &lt;/span&gt;&lt;span style="-sec-ix-hidden:Hidden_kLboFkrwmU241zeI964eiA;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;three&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; or &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;four years&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; and typically have a contractual term of &lt;/span&gt;&lt;span style="-sec-ix-hidden:Hidden_y4t_8y311Ue2o7Uk2kMnjA;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;seven&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; or &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;ten years&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;. Stock-based compensation expense included in the Condensed Consolidated Statements of Operations for stock options was &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;$0.1&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; million and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;$0.2&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; million for the three months ended June 30, 2024 and 2023, respectively and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;$0.2&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; million and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;$0.5&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; million for the six months ended June 30, 2024 and 2023, respectively. At June 30, 2024, there was approximately &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;$0.1&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; million of total unrecognized pre-tax stock option expense under our equity compensation plans, which is expected to be recognized on a straight-line basis over a weighted-average period of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;1.0&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; years.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Our stock option activity for the six months ended June 30, 2024, was as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:-0.08757782%;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Weighted-&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Weighted-&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Average&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Average&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Aggregate&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Options&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Exercise&#160;Price&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Remaining&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Intrinsic&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:37.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands except options and per share data)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Outstanding&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Per Share &lt;/b&gt;&lt;sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;"&gt;(1)&lt;/sup&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Contractual Life&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Value &lt;/b&gt;&lt;sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;"&gt;(2)&lt;/sup&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Balance at December 31, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 429,960&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.73%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 40.74&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;3.8&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 223&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Exercised&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (1,153)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1.35&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 14&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Cancelled/Expired&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (12,995)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.73%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 41.17&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Balance at June 30, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 415,812&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 40.83&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;3.3&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 125&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.73%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Options exercisable at June&#160;30,&#160;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 392,239&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 42.19&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;3.2&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 65&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"&gt;&lt;tr&gt;&lt;td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;text-decoration-line:none;text-transform:none;vertical-align:baseline;white-space:nowrap;width:18pt;padding:0pt 0pt 6pt 0pt;"&gt;(1)&lt;/td&gt;&lt;td style="padding:0pt 0pt 6pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;"&gt;The exercise price of each option granted during the period shown was equal to the market price of the underlying stock on the date of grant.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"&gt;&lt;tr&gt;&lt;td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;text-decoration-line:none;text-transform:none;vertical-align:baseline;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;"&gt;(2)&lt;/td&gt;&lt;td style="padding:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;"&gt;The aggregate intrinsic value of options exercised represents the difference between the exercise price of the option and the closing stock price of our common stock on the date of exercise. The aggregate intrinsic value of options outstanding represents the difference between the exercise price of the option and the closing stock price of our common stock on the last trading day of the period.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Options exercisable of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;435,559&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; as of June 30, 2023, had a weighted-average exercise price of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$44.67&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; per share.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Time-Based Restricted Stock Units&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We have granted time-based restricted stock units to certain participants under the 2016 Plan that are stock-settled with common shares. &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Time-based restricted stock units granted under the 2016 Plan vest over &lt;/span&gt;&lt;span style="-sec-ix-hidden:Hidden_eZ3xB74RXU6NziO2vey1sA;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;one&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; to &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;three years&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;. Stock-based compensation expense included in the Condensed Consolidated Statements of Operations for time-based restricted stock units was &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$1.5&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$1.3&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for the three months ended June 30, 2024 and 2023, respectively, and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$2.9&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$2.6&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for the six months ended June 30, 2024 and 2023, respectively. At June 30, 2024, there was approximately &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$8.3&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million of total unrecognized pre-tax compensation expense related to outstanding time-based restricted stock units that is expected to be recognized over a weighted-average period of &lt;/span&gt;&lt;span style="-sec-ix-hidden:Hidden_qxZrAitPFUeRdDk6Iart9A;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;1.9&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; years.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Our time-based restricted stock unit activity for the six months ended June 30, 2024, was as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:46.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Weighted-&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Average Grant&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Aggregate&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Units&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Date Fair Value&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Intrinsic&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:46.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands except unit and per unit data)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Outstanding&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Per Unit&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;"&gt;Value &lt;/b&gt;&lt;sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;"&gt;(1)&lt;/sup&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Balance at December 31, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 589,142&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 16.35&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,425&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:46.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Granted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 464,145&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 13.87&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Vested&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (224,149)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 18.02&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:46.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Cancelled&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (107,363)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 14.62&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Balance at June 30, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 721,775&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 14.50&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,618&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"&gt;&lt;tr&gt;&lt;td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 6pt 0pt;"&gt;(1)&lt;/td&gt;&lt;td style="padding:0pt 0pt 6pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;"&gt;The aggregate intrinsic value of restricted stock units outstanding was based on our closing stock price on the last trading day of the period. &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Performance-Based Restricted Stock Units&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We have granted performance-based restricted stock units (&#x201c;PSUs&#x201d;) to certain participants under the 2016 Plan. These PSUs have both performance-based and time-based vesting features. The PSUs granted in 2023 have &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;three&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; separate performance periods, and &lt;/span&gt;&lt;span style="-sec-ix-hidden:Hidden_uAKG2g7mZk--CJFl0zmvdg;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;one-third&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; of each grant will be earned if and to the extent performance goals based on revenue change and adjusted EBITDA margin are achieved in each of 2023 and 2024 (ranging from &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;25%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; to &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;175%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; of target), and &lt;/span&gt;&lt;span style="-sec-ix-hidden:Hidden_Dc9cTpTp0kahwn8Wwp10OQ;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;one-third&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; will be earned if and to the extent performance goals based on revenue change and adjusted EBITDA change are achieved in 2025 (ranging from &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;25%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; to &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;175%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; of target). The PSUs granted in 2024 have &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;three&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; separate performance periods, and &lt;/span&gt;&lt;span style="-sec-ix-hidden:Hidden_zYXFcnFJn0-ybR_mTIZHHw;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;one-third&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; of each grant will be earned if and to the extent performance goals based on revenue change and adjusted EBITDA margin are achieved in 2024 (ranging from &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;25%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; to &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;175%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; of target), &lt;/span&gt;&lt;span style="-sec-ix-hidden:Hidden_FQbZztpU1EeZnyJ6p9PWGg;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;one-third&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; will be earned if and to the extent performance goals based on revenue change and adjusted EBITDA change are achieved in 2025 (ranging from &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;25%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; to &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;175%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; of target), and &lt;/span&gt;&lt;span style="-sec-ix-hidden:Hidden_4ZqkYWgRrk6GX2MYoeozQA;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;one-third&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; will be earned if and to the extent performance goals to be established are achieved in 2026. All earned and vested PSUs will be settled in shares of common stock.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Stock-based compensation expense recognized for PSUs was &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$0.2&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$0.1&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for the three months ended &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;June 30, 2024 and 2023, respectively, and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$0.6&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$0.3&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for the six months ended June 30, 2024 and 2023, respectively. &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;At June 30, 2024, there was approximately &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$1.5&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million of total unrecognized pre-tax compensation expense related to outstanding PSUs that is expected to be recognized over a weighted average period of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;2.2&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; years.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Our PSU activity for the six months ended June 30, 2024, was as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:44.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Weighted-&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Average Grant&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Aggregate&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;PSUs&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Date Fair Value&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Intrinsic&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:44.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands except unit and per unit data)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Outstanding&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Per Unit&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;"&gt;Value &lt;/b&gt;&lt;sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;"&gt;(1)&lt;/sup&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:44.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Balance at December 31, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 198,232&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 18.93&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,785&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Granted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 160,659&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 13.88&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:44.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Vested&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (44,162)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 27.31&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Cancelled&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (104,913)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 14.14&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:44.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Balance at June 30, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 209,816&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 15.70&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,505&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"&gt;&lt;tr&gt;&lt;td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;"&gt;(1)&lt;/td&gt;&lt;td style="padding:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;"&gt;The aggregate intrinsic value of PSUs outstanding was based on our closing stock price on the last trading day of the period. &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-style:italic;font-weight:bold;"&gt;Employee Stock Purchase Plan&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Our employee stock purchase plan (&#x201c;ESPP&#x201d;), which was approved by our Board of Directors on April 27, 2016, and by our stockholders on June 20, 2016, allows participating employees to purchase shares of our common stock at a discount through payroll deductions. The ESPP is available to all of our employees and employees of participating subsidiaries. Participating employees may purchase common stock, on a voluntary after-tax basis, at a price equal to &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;85%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; of the lower of the closing market price per share of our common stock on the first or last trading day of each stock purchase period. The ESPP provides for &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;six-month&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; purchase periods, beginning on May 16 and November 16 of each calendar year. &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;A total of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;1,600,000&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; shares of common stock was initially reserved for issuance under the ESPP. This share reserve will automatically be supplemented each January 1, commencing in 2017 and ending on and including January 1, 2026, by an amount equal to the least of (a) &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;1%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; of the shares of our common stock outstanding on the immediately preceding December 31, (b) &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;500,000&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; shares or (c) such lesser amount as our Board of Directors may determine. Pursuant to the automatic increase feature of the ESPP, &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;236,003&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; shares were added as available for issuance thereunder on January 1, 2024. Our Board of Directors exercised its prerogative to forego the automatic increase on January 1, 2023. As of June 30, 2024, &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;1,497,964&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; shares were available for future issuance under the ESPP. We recognized stock-based compensation expense associated with the ESPP of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$0.1&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for each of the three months ended June 30, 2024 and 2023, and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$0.2&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$0.3&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for the six months ended June 30, 2024 and 2023, respectively.&lt;/span&gt;&lt;/p&gt;</us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="As_Of_6_30_2024_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_J6J7Egu7BE6tb3ShfRSqDA"
      decimals="INF"
      id="Narr_n2EZwEkn5kONsXAiaunwrA"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">4800000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage
      contextRef="As_Of_6_30_2024_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_J6J7Egu7BE6tb3ShfRSqDA"
      decimals="2"
      id="Narr_DOMBkyOLskagkZdQmmJrnw"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.05</tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuancePercentage>
    <tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber
      contextRef="As_Of_6_30_2024_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_J6J7Egu7BE6tb3ShfRSqDA"
      decimals="INF"
      id="Narr_stFZQw2xEUa9_RW48Ek5DA"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">2500000</tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardAutomaticAnnualIncreaseInSharesReservedAndAvailableForIssuanceNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized
      contextRef="Duration_1_1_2024_To_1_1_2024_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_ofFDGQjvk0aI9xa2KbMZrQ"
      decimals="INF"
      id="Narr_b7uP3wphY0ybzs4ZiKtB5A"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">1180019</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="As_Of_6_30_2024_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_J6J7Egu7BE6tb3ShfRSqDA"
      decimals="INF"
      id="Narr_j48Jga6oJ0yQMWEuabFEug"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">6615454</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-5"
      id="Narr_6WRp1ld3YEmrwM_5zhswdQ"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1900000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-5"
      id="Narr_rSiyWk0jt0yNwa5V4q1ksg"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1800000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-5"
      id="Narr_IzYmyOpn0U2QT9kufyctDg"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3900000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-5"
      id="Narr_1fVTebop00G8Ifp3mS3lAA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3800000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_choPEt7FmUShshbQTo98Yw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.82%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.2%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.28%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.26%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.22%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.48%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Three Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Six Months Ended &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June&#160;30,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:22.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June&#160;30,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:50.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:10.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:50.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Cost of revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 103&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 121&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 186&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 224&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Sales and marketing expenses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 606&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 810&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.26%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,344&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,562&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:50.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Research and development expenses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 48&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 44&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.26%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 81&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 93&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:50.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Reimbursement, general and administrative expenses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,103&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 833&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,288&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,952&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:50.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total stock-based compensation expense&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.82%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,860&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,808&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,899&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:8.22%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,831&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_BZcJLooymkqAS-KE13NMYA"
      decimals="-3"
      id="Tc_vDtVtOy2F0ugvKbvEM6fSQ_4_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">103000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_ywsQSsjPeUWB7BS4q2DpMQ"
      decimals="-3"
      id="Tc_hO1jGyNIokGopMLRkdqXUg_4_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">121000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_aw1g2Ytc8EaMEXZk7bgvuQ"
      decimals="-3"
      id="Tc_gjFKP2cuykmRX-cEzGOxIw_4_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">186000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_yePD9bKHCUaPvuf6XLfkIA"
      decimals="-3"
      id="Tc_GjqQBUqR20mO63FZaNqcKw_4_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">224000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember_5JKHubjwBEGtATw8ASNgfg"
      decimals="-3"
      id="Tc_ICqo3sFhHkelv648Wb40mA_5_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">606000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember_2JSrBU8CTU-sbg86Nyn9iA"
      decimals="-3"
      id="Tc__7-B9nHDHUuOvLrCF2xnvg_5_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">810000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember_HxSjMzLYL0GA_jEuG3Mbgg"
      decimals="-3"
      id="Tc_krZmxQK5iUu6FgSr6j7A7A_5_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1344000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember_6ILm2QWg9UOZzuoI3haAKA"
      decimals="-3"
      id="Tc_pRLiu8obqUGlTsslxK3SuQ_5_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1562000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember_-A12ocK6ikK5vZqQOstnMw"
      decimals="-3"
      id="Tc_-1B77-xUlUi5Aw7zAIwRig_6_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">48000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember_oNzNP8Z6IUK36Z0VublMuQ"
      decimals="-3"
      id="Tc_fI5kcwIO5kS3vk5r-DVoKg_6_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">44000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember_LDeEsngrN0i6IXD9s9CV5w"
      decimals="-3"
      id="Tc_yTzH9vzoAkGb_kg6jO-Lnw_6_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">81000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember_Xt2SUTRSUkC214Je-lK66Q"
      decimals="-3"
      id="Tc_88QzA6bTNUa5x4zrYcG0kA_6_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">93000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_J1sCCrsMH0u6FnGeMI5R4A"
      decimals="-3"
      id="Tc_8u2B8UcDokWAFF79wf-_Sg_7_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1103000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_InD_kSpVWkWpdxtCTAgllA"
      decimals="-3"
      id="Tc_P6WTGKT8AkO2QY9bXsmNqQ_7_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">833000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_lCzJt7RwjEm6bt9lS2nvZQ"
      decimals="-3"
      id="Tc_dgjXYIMbeU2Ltm3XDcLXPA_7_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2288000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_PvP2spJEI0ixIMkN8EUjGQ"
      decimals="-3"
      id="Tc_C-r4QdtgQk-xLHgXSPYpHg_7_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1952000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_CxwL9TXXnUC4A86OOKHVeA_8_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1860000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_LLjjTl6u50i0s17RxjuTfQ_8_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1808000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_3CCRAIOClEuts4wyi5_2Xw_8_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3899000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_vlOjv9sNk0qUPtpw4VoULw_8_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3831000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_ghJx-QtBM0SdX9JhHhCA1g"
      id="Narr_EGA1WW7fDUW_dGisSEYPOw">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_ghJx-QtBM0SdX9JhHhCA1g"
      id="Narr_HBdYx-OVp0mWdnYQMd5TVg">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_cioTeAwoy0-99vBb2rKQAA"
      decimals="-5"
      id="Narr_CoawPisycUeyJCGjuTLCSQ"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">100000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_0sXoNSfb4k6UBc9GSOK9dQ"
      decimals="-5"
      id="Narr_dlgtRuz7xUqjAGyXNaqjvA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">200000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w"
      decimals="-5"
      id="Narr_Q6e1DVLWkEuQVlxEq3Lgdg"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">200000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_AkhuhltJoEODpOAbZcPGfw"
      decimals="-5"
      id="Narr_tNe_WqwuJUSZR0tmuKYxkQ"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">500000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions
      contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_g40pvLmaQk6XkNT28sbcnA"
      decimals="-5"
      id="Narr_tRLqZ-KEd0CDuC3G3nK0AA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">100000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w"
      id="Narr_9DUsjbPYPk-fM4gvFaZYBQ">P1Y</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_HaYAhXCTXEuDwm5thCoyKQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:-0.08757782%;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Weighted-&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Weighted-&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Average&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Average&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Aggregate&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Options&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Exercise&#160;Price&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Remaining&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Intrinsic&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:37.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands except options and per share data)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Outstanding&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Per Share &lt;/b&gt;&lt;sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;"&gt;(1)&lt;/sup&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Contractual Life&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Value &lt;/b&gt;&lt;sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;"&gt;(2)&lt;/sup&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Balance at December 31, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 429,960&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.73%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 40.74&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;3.8&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 223&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Exercised&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (1,153)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1.35&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 14&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Cancelled/Expired&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (12,995)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.73%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 41.17&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Balance at June 30, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 415,812&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 40.83&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;3.3&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 125&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.73%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:37.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Options exercisable at June&#160;30,&#160;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 392,239&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 42.19&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;3.2&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; years&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 65&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"&gt;&lt;tr&gt;&lt;td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;text-decoration-line:none;text-transform:none;vertical-align:baseline;white-space:nowrap;width:18pt;padding:0pt 0pt 6pt 0pt;"&gt;(1)&lt;/td&gt;&lt;td style="padding:0pt 0pt 6pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;"&gt;The exercise price of each option granted during the period shown was equal to the market price of the underlying stock on the date of grant.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"&gt;&lt;tr&gt;&lt;td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;text-decoration-line:none;text-transform:none;vertical-align:baseline;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;"&gt;(2)&lt;/td&gt;&lt;td style="padding:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;"&gt;The aggregate intrinsic value of options exercised represents the difference between the exercise price of the option and the closing stock price of our common stock on the date of exercise. The aggregate intrinsic value of options outstanding represents the difference between the exercise price of the option and the closing stock price of our common stock on the last trading day of the period.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_WtVTo_t3pUifOnZF4OotMA"
      decimals="INF"
      id="Tc_nxKVefvIk0GOUz9SzgtDgg_5_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">429960</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_WtVTo_t3pUifOnZF4OotMA"
      decimals="2"
      id="Tc_IIhNCYebsEODVFLIbUSXQA_5_5"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">40.74</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_AkhuhltJoEODpOAbZcPGfw"
      id="Narr_I3hm7wTvt0y5nXR4-khhjg">P3Y9M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_WtVTo_t3pUifOnZF4OotMA"
      decimals="-3"
      id="Tc_Nf1TMxRzj0iaP7OZlo_4_A_5_10"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">223000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w"
      decimals="INF"
      id="Tc_eWhCNgrYFUyfSiyNiVW7jQ_6_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">1153</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w"
      decimals="2"
      id="Tc_qK5DWRS-dkuJtj4oiG1Vpw_6_5"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">1.35</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w"
      decimals="-3"
      id="Tc_stJzXA82YEadW_GeQiOrFw_6_10"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">14000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w"
      decimals="INF"
      id="Tc_yCp1e4-DZ0KnKgEaYOgokQ_7_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">12995</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w"
      decimals="2"
      id="Tc_AR_mqAIXnEyLJgQmKTcljA_7_5"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">41.17</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_g40pvLmaQk6XkNT28sbcnA"
      decimals="INF"
      id="Tc_n6UYupU1pkKfWPUf_tdsrA_8_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">415812</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_g40pvLmaQk6XkNT28sbcnA"
      decimals="2"
      id="Tc_LF0Kr88UpkSSre9g57Z9Tw_8_5"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">40.83</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w"
      id="Narr_CPGPAUUo2Ee-MQGllWmCfw">P3Y3M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_g40pvLmaQk6XkNT28sbcnA"
      decimals="-3"
      id="Tc_yAhF92afoUKsZCMIPmwcRA_8_10"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">125000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_g40pvLmaQk6XkNT28sbcnA"
      decimals="INF"
      id="Tc_6qXNfD_pY0Gg-O3BazV9MA_10_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">392239</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_g40pvLmaQk6XkNT28sbcnA"
      decimals="2"
      id="Tc_IxfAGZbRGUaUKnWMjAx6yg_10_5"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">42.19</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_qi32kYqgp0KIeXMil3Wp-w"
      id="Narr_HNlSK7VhSEmfP_X6whcZ8g">P3Y2M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
      contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_g40pvLmaQk6XkNT28sbcnA"
      decimals="-3"
      id="Tc_4FQgtN_4jE-gGL5k31ARDA_10_10"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">65000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="As_Of_6_30_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_BOcMZGF4UUGBZOdyCAwvQw"
      decimals="INF"
      id="Narr_P103jWO4qUWSlHry-93hxw"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">435559</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="As_Of_6_30_2023_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember_BOcMZGF4UUGBZOdyCAwvQw"
      decimals="2"
      id="Narr_YAcuNXKUe0GFua-P0Y89Yw"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">44.67</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_CRs_D8ro5kiqKnXVhcCEGg"
      id="Narr_Dey2rbcs5EawE1jZQkBPnA">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_iHQd9y1Ll0yZfYcvXClTQg"
      decimals="-5"
      id="Narr_ZSUzl1dCt0ukEgg0htZCpg"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1500000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_nV2lVbHNuEqPk3TL3gUltA"
      decimals="-5"
      id="Narr_wdQ4hxaMxUm7iN0BP-4obw"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1300000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg"
      decimals="-5"
      id="Narr_TYp1y4Z_RU-Jx-dWHL3Giw"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2900000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_VhaGiA5jGkam-INZUFv_Kw"
      decimals="-5"
      id="Narr_SU_N4qpwbUOprqamrGDgOg"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2600000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X4jTL2lGQEi5OZH6-0_06w"
      decimals="-5"
      id="Narr_MWM9JrlNXEW72QTnXP6omA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">8300000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_Bvx8dB-taEaLeUjA4XBiOg"
      id="Tb_AknT_A6VuUyOzPivwcrySg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:46.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Weighted-&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Average Grant&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Aggregate&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Units&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Date Fair Value&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Intrinsic&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:46.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands except unit and per unit data)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Outstanding&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Per Unit&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:16.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;"&gt;Value &lt;/b&gt;&lt;sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;"&gt;(1)&lt;/sup&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Balance at December 31, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 589,142&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 16.35&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,425&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:46.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Granted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 464,145&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 13.87&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Vested&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (224,149)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 18.02&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:46.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Cancelled&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (107,363)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 14.62&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:46.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Balance at June 30, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.84%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 721,775&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 14.50&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,618&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"&gt;&lt;tr&gt;&lt;td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 6pt 0pt;"&gt;(1)&lt;/td&gt;&lt;td style="padding:0pt 0pt 6pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;"&gt;The aggregate intrinsic value of restricted stock units outstanding was based on our closing stock price on the last trading day of the period. &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_T6wjDTQPGEK1Gb201_e92w"
      decimals="INF"
      id="Tc_LlTEwpzGbUe0jZmFaKWq6g_5_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">589142</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_T6wjDTQPGEK1Gb201_e92w"
      decimals="2"
      id="Tc_01qh_ddMt06U4JFOqKyvtA_5_5"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">16.35</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding
      contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_T6wjDTQPGEK1Gb201_e92w"
      decimals="-3"
      id="Tc_14afDnT6I0qF4lTNuEeHCA_5_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">8425000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg"
      decimals="INF"
      id="Tc_wEttDfa4DkOfAxLEg74XBA_6_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">464145</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg"
      decimals="2"
      id="Tc_IPsO8L1eIUSJueTNDup7DA_6_5"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">13.87</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg"
      decimals="INF"
      id="Tc_cB9JndgiuEqzWkugL3PWxg_7_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">224149</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg"
      decimals="2"
      id="Tc_onAc3n3CgEyxfusolli5AQ_7_5"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">18.02</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg"
      decimals="INF"
      id="Tc_thDmSHCY7UW0z6EmPs8qpA_8_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">107363</tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod>
    <tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_oxoaUAq8B0ev9lJDxb_Cqg"
      decimals="2"
      id="Tc_vkm5rJaSV028J1HycLtzXA_8_5"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">14.62</tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X4jTL2lGQEi5OZH6-0_06w"
      decimals="INF"
      id="Tc_urlvWV9AgEyYJTpvMhiYCw_9_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">721775</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X4jTL2lGQEi5OZH6-0_06w"
      decimals="2"
      id="Tc_aj5yhK5_wUeRLa43wCwTuA_9_5"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">14.50</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding
      contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TimeBasedRestrictedStockUnitsRsusMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X4jTL2lGQEi5OZH6-0_06w"
      decimals="-3"
      id="Tc_4k9AL9QTBU6AcyXprbUQ0A_9_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">8618000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding>
    <tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyThreePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_vf2apqJLn0annc2r067_Uw"
      decimals="INF"
      id="Narr_PtweZofZtUGweKoNbkMrIg"
      unitRef="Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g">3</tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods>
    <tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_2vjrEsRWU0O0frPl2AhISg"
      decimals="2"
      id="Narr_eikiLPgfVU6_pOlkKIwQ5g"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.25</tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin>
    <tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_wLPbRsXsKUqKBQpel7Wk9g"
      decimals="2"
      id="Narr_idlgEEhDU0Ktp8F80rOnig"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">1.75</tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin>
    <tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_CdHOtZoixEyQRv5ItF8tFw"
      decimals="2"
      id="Narr_t9ZvRH2up0iG3rstBxdVCg"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.25</tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin>
    <tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_CkRSapEG_EqdwTx_iFRKgA"
      decimals="2"
      id="Narr_wAKMxnzcREKdZX83exVTPA"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">1.75</tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin>
    <tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg"
      decimals="INF"
      id="Narr_5n6hz4xKFEOTOSetI-4O0g"
      unitRef="Unit_Standard_item_1Y20UqJ5_EauIAhn_Wea5g">3</tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPerformancePeriods>
    <tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFourPsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_pgC2_vFXqU2rv8yUNSbAeg"
      decimals="2"
      id="Narr_xxZoUyPCRky5hjvwIJ0ZfA"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.25</tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin>
    <tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFourPsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_bj5dK8svok-fiQtw1nE6pQ"
      decimals="2"
      id="Narr_s1AX1D1sD0yd0H5HFuwk1Q"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">1.75</tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin>
    <tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_CdHOtZoixEyQRv5ItF8tFw"
      decimals="2"
      id="Narr_3ZVxqUJYAEyDGssowJhhIg"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.25</tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin>
    <tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_tcmd_TwoThousandTwentyFivePsuMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_CkRSapEG_EqdwTx_iFRKgA"
      decimals="2"
      id="Narr_C9R7LO8RZ0yPzuESgo9smA"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">1.75</tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardPerformanceGoalsRevenueChangeAndAdjustedEbitdaMargin>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_ezS-WnceHUuULd2dRAw4SA"
      decimals="-5"
      id="Narr_Ux6VcN61V0WVSbC8g_ulUQ"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">200000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_c8suWCVS-0-8M1lSBp3YCg"
      decimals="-5"
      id="Narr_8748FYI_ZUSy-QvusQodZg"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">100000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg"
      decimals="-5"
      id="Narr_QGuh-6z7RUKj4E-Glx7GoA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">600000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_pGOubrJYkESRGzEtPzQ98A"
      decimals="-5"
      id="Narr_VCG7A0Cle0mOFEl5CemjIQ"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">300000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_5KM6x-YdRUW-jJYt7e6Uqg"
      decimals="-5"
      id="Narr_yAPW_3YF-Ei0Ef0JVucN8g"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1500000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg"
      id="Narr_p3GTptCaQkK7QF3X1W1npA">P2Y2M12D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_97xY_sdV2kKwp21GIEpGMA"
      id="Tb_oDuz0559nUymeMnS2CJmTQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:44.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Weighted-&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Average Grant&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Aggregate&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;PSUs&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Date Fair Value&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Intrinsic&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:44.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands except unit and per unit data)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Outstanding&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Per Unit&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:17.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-weight:bold;"&gt;Value &lt;/b&gt;&lt;sup style="font-family:'Arial','Helvetica','sans-serif';font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;"&gt;(1)&lt;/sup&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:44.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Balance at December 31, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 198,232&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 18.93&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,785&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Granted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 160,659&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 13.88&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:44.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Vested&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (44,162)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 27.31&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:44.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Cancelled&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (104,913)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 14.14&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:44.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Balance at June 30, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15.08%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 209,816&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 15.70&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:14.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,505&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:6pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;background:#ffffff;border:0pt;"&gt;&lt;tr&gt;&lt;td style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt 0pt 12pt 0pt;"&gt;(1)&lt;/td&gt;&lt;td style="padding:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-style:normal;font-weight:normal;"&gt;The aggregate intrinsic value of PSUs outstanding was based on our closing stock price on the last trading day of the period. &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X8xqXYhXF0uQc3XhVSeRLw"
      decimals="INF"
      id="Tc_gCLWP-wuUUm8nscnNr5bOQ_5_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">198232</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X8xqXYhXF0uQc3XhVSeRLw"
      decimals="2"
      id="Tc_ohcdTPFUS06wlUOk0jZx4A_5_5"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">18.93</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding
      contextRef="As_Of_12_31_2023_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_X8xqXYhXF0uQc3XhVSeRLw"
      decimals="-3"
      id="Tc_byKE1eYLxESKdNifnersVA_5_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2785000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg"
      decimals="INF"
      id="Tc_8RfxE3gx4EqP1QQjfhc9qw_6_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">160659</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg"
      decimals="2"
      id="Tc_tPVtVWE9eE2jYbPcfqFRyg_6_5"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">13.88</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg"
      decimals="INF"
      id="Tc_RR4_r9Ftq0aFt4GVQ7pvQg_7_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">44162</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg"
      decimals="2"
      id="Tc_qjPciAegpEK7bk6q6LgWwg_7_5"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">27.31</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg"
      decimals="INF"
      id="Tc_3inalapzbEyjo1uHBj35xw_8_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">104913</tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancelledInPeriod>
    <tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_m8NK9FOcxkO_idyIBQYulg"
      decimals="2"
      id="Tc_K8SoRE_fyUS3vUSkHr97ZA_8_5"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">14.14</tcmd:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsCancellationsWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_5KM6x-YdRUW-jJYt7e6Uqg"
      decimals="INF"
      id="Tc_3IUcsngRiUaEpRs3A1Hmeg_9_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">209816</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_5KM6x-YdRUW-jJYt7e6Uqg"
      decimals="2"
      id="Tc_h1qxgrWlmE-qvNTsPby0gg_9_5"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">15.70</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding
      contextRef="As_Of_6_30_2024_us-gaap_AwardTypeAxis_tcmd_PerformanceBasedStockSettledRestrictedStockUnitsMember_us-gaap_PlanNameAxis_tcmd_EquityIncentivePlan2016Member_5KM6x-YdRUW-jJYt7e6Uqg"
      decimals="-3"
      id="Tc_qYdjHjK8AEKazg0LQOeD1Q_9_8"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2505000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_7fujnUGjr0OaOiKI4BNzOQ"
      decimals="2"
      id="Narr_EGGsy230a06kfBXByGr0eg"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.85</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent>
    <tcmd:EmployeeStockPurchasePlanOfferingPeriodsPeriod
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_7fujnUGjr0OaOiKI4BNzOQ"
      id="Narr_l5CbCRTP40awj-1PWMvWHA">P6M</tcmd:EmployeeStockPurchasePlanOfferingPeriodsPeriod>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="As_Of_4_27_2016_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_CxdJbOw2hkGAi09BZ8sXPg"
      decimals="INF"
      id="Narr_Bn0rUf69YUKDzU6-0gUrIw"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">1600000</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <tcmd:IncrementalSharesToBeIssuedPercentage
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_7fujnUGjr0OaOiKI4BNzOQ"
      decimals="2"
      id="Narr_HfnbrAl7G0y2G_m1yGd0kg"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.01</tcmd:IncrementalSharesToBeIssuedPercentage>
    <tcmd:IncrementalShareIncrease
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_7fujnUGjr0OaOiKI4BNzOQ"
      decimals="INF"
      id="Narr_aJF97UmhoEGRtiW2oX9DSQ"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">500000</tcmd:IncrementalShareIncrease>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="As_Of_1_1_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_5pYeZydTkUCyQNbFnxV3nQ"
      decimals="INF"
      id="Narr_jq-r8kC-J02XGrBrJK7hQg"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">236003</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="As_Of_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_-lOENE2F9k6QTl4_q-DS5g"
      decimals="INF"
      id="Narr_flludNddjUG87bZmTdH5PQ"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">1497964</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_s1Ty83wXCEi5WP97Hnx_9w"
      decimals="-5"
      id="Narr_1UOfO3WSvEOHJ-zFhk2b4g"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">100000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_S6WOGUauiEeQCq3MrtpmwQ"
      decimals="-5"
      id="Narr_QXtt7fSnBUm2kEo3BB7TQg"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">100000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_7fujnUGjr0OaOiKI4BNzOQ"
      decimals="-5"
      id="Narr_dmXmnCUeyUiGs8bn4eoyug"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">200000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_SubsidiarySaleOfStockAxis_us-gaap_EmployeeStockMember_doHHH7OjnE2HPXOLgRoMBA"
      decimals="-5"
      id="Narr_X-4CX-tCGkqkv4rr0kko9g"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">300000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_-fIyDV63Y0u1QIdbkcFyeg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Note 11. Revenue&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We derive our revenue from the sale and rental of our products to our customers in the United States. The following table presents our revenue, inclusive of sales and rental revenue, disaggregated by product line&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.98%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Three Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.36%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Six Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Revenue&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Lymphedema products&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 64,683&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 59,999&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 116,996&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 109,751&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Airway clearance products&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,535&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,340&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 17,310&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 17,434&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 73,218&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 68,339&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 134,306&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 127,185&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Percentage of total revenue&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Lymphedema products&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;88%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;88%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;87%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;86%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Airway clearance products&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;12%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;12%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;13%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;14%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;100%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;100%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;100%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;100%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Our revenue by channel, inclusive of sales and rental revenue, for the three and six months ended June 30, 2024 and 2023, are summarized in the following table:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.36%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.34%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:27.98%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Three Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:29.36%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Six Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:27.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:29.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:13.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:13.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Private insurers and other payers&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 44,066&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 36,499&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 75,343&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 61,924&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Veterans Administration&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,071&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 7,121&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.36%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 14,897&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.34%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 12,944&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Medicare&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 12,546&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 16,379&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 26,756&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 34,883&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Durable medical equipment distributors&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,535&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,340&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 17,310&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 17,434&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 73,218&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 68,339&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 134,306&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 127,185&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;Our rental revenue is derived from rent-to-purchase arrangements that typically range from &lt;/span&gt;&lt;span style="-sec-ix-hidden:Hidden_284Rs177CEejvCyNOpuTsg;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;three&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;ten months&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;. As title transfers to the patient, with whom we have the contract, upon the termination of the lease term and because collectability is probable, under ASC 842, these are recognized as sales-type leases. Each rental agreement contains two components, the controller and related garments, both of which are interdependent and recognized as one lease component. &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;The revenue and associated cost of revenue of sales-type leases are recognized on the lease commencement date and a net investment in leases is recorded on the Condensed Consolidated Balance Sheets. We bill the patients&#x2019; insurance payers monthly over the duration of the rental term. We record the net investment in leases and recognize revenue upon commencement of the lease in the amount of the expected consideration to be received through the monthly payments. Similar to our sales revenue, the transaction price is impacted by multiple factors, including the terms and conditions contracted by third-party payers. As the rental contract resides with the patients, we have elected the portfolio approach, at the payer level, to determine the expected consideration, which considers the impact of early terminations. While the contract is with the patient, in certain circumstances, the third-party payer elects an initial rental period with an option to extend. We assess the likelihood of extending the lease at the onset of the lease to determine if the option is reasonably certain to be exercised. As the lease is short-term in nature, we anticipate collection of substantially all of the net investment within the first year of the lease agreement. Completion of these payments represents the fair market value of the equipment, and as such, interest income is not applicable. &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Rental revenue for the three months ended June 30, 2024 and 2023, was primarily from private insurers. Sales-type lease revenue and the associated cost of revenue for the three and six months ended June 30, 2024 and 2023, was:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:31.07%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.84%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:31.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Three Months Ended June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Six Months Ended June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:31.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:31.07%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Sales-type lease revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,951&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,537&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 16,732&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 14,592&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:31.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Cost of sales-type lease revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,852&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,175&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 5,567&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 5,911&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:31.07%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Gross profit&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 6,099&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 5,362&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 11,165&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.84%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,681&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_3LZ9szsJzUGTd21_M0qRjQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.98%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Three Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.36%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Six Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Revenue&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Lymphedema products&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 64,683&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 59,999&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 116,996&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 109,751&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Airway clearance products&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,535&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,340&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 17,310&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 17,434&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 73,218&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 68,339&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 134,306&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 127,185&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Percentage of total revenue&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Lymphedema products&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;88%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;88%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;87%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;86%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Airway clearance products&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;12%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;12%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;13%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;14%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;100%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;100%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;100%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;100%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember__aEYDxJTI0upXEUGPGIthQ"
      decimals="-3"
      id="Tc_MdwT7Lh0PkGLNrVPzoRqwg_5_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">64683000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember__3il7B6sHkqLFAXwRoP1cA"
      decimals="-3"
      id="Tc_ZgaQIRlazEmZaTwp_x2tYQ_5_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">59999000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember_04wqXpjY3kqN11nx4kIJ-Q"
      decimals="-3"
      id="Tc_gWuNH8eSb0uWyZ8pP-cmHw_5_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">116996000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember_vmnWalIBSki-SkhrcDoGfg"
      decimals="-3"
      id="Tc_tHYLaFKhZUKHnEK6CCUkQg_5_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">109751000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_Z8PQOK9oAkioGS7j0udc7Q"
      decimals="-3"
      id="Tc_OgGDr-IyPkuPO_sIIMaPJQ_6_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">8535000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_PmBIY95pjkOcuNBj1xpXXw"
      decimals="-3"
      id="Tc_-ttRuBImfk6IvstMftET5A_6_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">8340000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_rjm7WIevX0uwcdeheszyGw"
      decimals="-3"
      id="Tc_jGQV9yXUOE2_uZPYpyZJ9Q_6_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">17310000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_x8zVkG3hqU-tUogzIiMkmg"
      decimals="-3"
      id="Tc_188vvwUh90ebhgJ7aza5ZA_6_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">17434000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_TlAD4D-58kG7Xe_-NkbhgA_7_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">73218000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_lIjX1oGIHUCBMFjVsdru_g_7_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">68339000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_pOagdS7q90CSNCHxNDHdcw_7_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">134306000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_Y9_pjKt4_kqwDv5XlubMxg_7_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">127185000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <tcmd:PercentageOfRevenue
      contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember__aEYDxJTI0upXEUGPGIthQ"
      decimals="2"
      id="Tc_ACkST7UBxEuAbSsdAOCYFw_10_3"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.88</tcmd:PercentageOfRevenue>
    <tcmd:PercentageOfRevenue
      contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember__3il7B6sHkqLFAXwRoP1cA"
      decimals="2"
      id="Tc_w_jIBHUeZkGvzMIzAxVSeA_10_6"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.88</tcmd:PercentageOfRevenue>
    <tcmd:PercentageOfRevenue
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember_04wqXpjY3kqN11nx4kIJ-Q"
      decimals="2"
      id="Tc_9V4pdHAnAU-I7aHRpkbkaA_10_9"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.87</tcmd:PercentageOfRevenue>
    <tcmd:PercentageOfRevenue
      contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_LymphedemaProductsMember_vmnWalIBSki-SkhrcDoGfg"
      decimals="2"
      id="Tc_9Fbv7WCR30S4CUMT1yZfzw_10_12"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.86</tcmd:PercentageOfRevenue>
    <tcmd:PercentageOfRevenue
      contextRef="Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_Z8PQOK9oAkioGS7j0udc7Q"
      decimals="2"
      id="Tc_glKr8NLWP0OQVbelQVYMmw_11_3"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.12</tcmd:PercentageOfRevenue>
    <tcmd:PercentageOfRevenue
      contextRef="Duration_4_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_PmBIY95pjkOcuNBj1xpXXw"
      decimals="2"
      id="Tc_N-UCYH012kuqq_evwDoB8w_11_6"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.12</tcmd:PercentageOfRevenue>
    <tcmd:PercentageOfRevenue
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_rjm7WIevX0uwcdeheszyGw"
      decimals="2"
      id="Tc_ikr7jJxplUulP7GLR-YoyQ_11_9"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.13</tcmd:PercentageOfRevenue>
    <tcmd:PercentageOfRevenue
      contextRef="Duration_1_1_2023_To_6_30_2023_srt_ProductOrServiceAxis_tcmd_AirwayClearanceProductsMember_x8zVkG3hqU-tUogzIiMkmg"
      decimals="2"
      id="Tc_JlvTccPk60KpAPyh9Y2w2A_11_12"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.14</tcmd:PercentageOfRevenue>
    <tcmd:PercentageOfRevenue
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="2"
      id="Tc_0tRrGpnxlkezMhfNfJAnnw_12_3"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">1</tcmd:PercentageOfRevenue>
    <tcmd:PercentageOfRevenue
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="2"
      id="Tc_eUOdnwv4ZEqgoql21iKjig_12_6"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">1</tcmd:PercentageOfRevenue>
    <tcmd:PercentageOfRevenue
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="2"
      id="Tc_BXqkIyMdWUeNIMcjDIlHAA_12_9"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">1</tcmd:PercentageOfRevenue>
    <tcmd:PercentageOfRevenue
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="2"
      id="Tc_9fHCyiBwck-EDEcQdt2X8g_12_12"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">1</tcmd:PercentageOfRevenue>
    <tcmd:ScheduleOfRevenueFromThirdPartyPayersTableTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_lPdz7p0k40Gfo5VXsW69Ag">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.36%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.34%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:27.98%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Three Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:29.36%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Six Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:27.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:normal;width:29.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:12.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:13.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:normal;width:13.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Private insurers and other payers&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 44,066&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 36,499&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 75,343&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 61,924&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Veterans Administration&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,071&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 7,121&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.36%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 14,897&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.34%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 12,944&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Medicare&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 12,546&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 16,379&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.36%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 26,756&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.34%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 34,883&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Durable medical equipment distributors&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,535&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,340&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 17,310&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 17,434&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:36.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 73,218&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:10.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 68,339&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 134,306&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 127,185&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</tcmd:ScheduleOfRevenueFromThirdPartyPayersTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_PrivateInsurersMember_vq8q3f_1wEaulWVDbJ5wOA"
      decimals="-3"
      id="Tc_ufvGKH9H0keH0vqfqvBEBw_4_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">44066000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_PrivateInsurersMember_DcWl6i8rcUm6MNN2Avn8qg"
      decimals="-3"
      id="Tc_xcFFdl7uOEmSFm0UFmWgGg_4_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">36499000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_PrivateInsurersMember_UcgTVt2uw0y9LysoUAvOLA"
      decimals="-3"
      id="Tc_r2BvbqUc6E-0wbkt1ds0AA_4_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">75343000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_PrivateInsurersMember_WGGJuSIalkSLzar76885Zw"
      decimals="-3"
      id="Tc_5qYACSUn0kygohB3XW3mvQ_4_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">61924000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_VeteransAdministrationMember_dmfo4nRvy0WlW5eKfSP9ow"
      decimals="-3"
      id="Tc_okMrKMhrhE6QBPADFlXDFg_5_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">8071000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_VeteransAdministrationMember_RHtbhnUZukqb-2vU2jp5kA"
      decimals="-3"
      id="Tc_WjE-cdFh30CZvQFrxuJnGQ_5_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">7121000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_VeteransAdministrationMember_RH6FbiMGOUSbvzKCcZKjvQ"
      decimals="-3"
      id="Tc_kRHWjitKa0KazFSqRtqyGg_5_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">14897000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_VeteransAdministrationMember_JZbV-5J9i0mfSTRA2TOLRg"
      decimals="-3"
      id="Tc_Wq8wBR4BTECEx7w2Xeq2kg_5_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">12944000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_MedicareMember_obZpUPXbM0aO8cT_GDmFwg"
      decimals="-3"
      id="Tc_CYsNCoaPEUe7oIIwlIhlmA_6_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">12546000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_MedicareMember_8ZsWA13QqEKqrwCpkevwkQ"
      decimals="-3"
      id="Tc_G5p3UzL0UEW6kLg6xM6Wzw_6_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">16379000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_MedicareMember_-b6LJm21NEOhzGm21yrLyA"
      decimals="-3"
      id="Tc_sMF2MyUKHkizXUdOP5sc7Q_6_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">26756000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_MedicareMember_VFe3F2kiuEmHfZfBKs3dSg"
      decimals="-3"
      id="Tc_dnfneCXbq0K90UCdP1BW4g_6_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">34883000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_DurableMedicalEquipmentDistributorsMember_AEWBW7YCaEKs2kDUZ5uddA"
      decimals="-3"
      id="Tc_UeKBhRDy-kagtGrRCwaKEQ_7_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">8535000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_DurableMedicalEquipmentDistributorsMember_9EnRkTwjgUiVB12kfJ9bQA"
      decimals="-3"
      id="Tc_mJftdDCi3USeQ-8LAEsHQQ_7_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">8340000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_MajorCustomersAxis_tcmd_DurableMedicalEquipmentDistributorsMember_oHNR_kLzWE6-0CByym0rkg"
      decimals="-3"
      id="Tc_oD_g9YBxp0eHnx8FcQ4VqQ_7_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">17310000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2023_To_6_30_2023_srt_MajorCustomersAxis_tcmd_DurableMedicalEquipmentDistributorsMember_oigy0xNv8kCsIsciRMorEA"
      decimals="-3"
      id="Tc_CwEAMQSWpU6ttI1vqKIu2Q_7_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">17434000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_kQQl-X3keECjr9z1X7iDLw_8_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">73218000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_X0xPuenaVUSlJdOLb-OKzw_8_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">68339000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_3u7aFy9RRESsmsiwJNNLPw_8_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">134306000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_YY5Mddnk4UqvO4MiFDJUwA_8_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">127185000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <tcmd:RentToPurchaseArrangementsRentalPeriod
      contextRef="Duration_1_1_2024_To_6_30_2024_srt_RangeAxis_srt_MaximumMember_6OKFgrMhnE246Gi8WeLlgQ"
      id="Narr_cnfnTUsXwEKokkkzYkZhNQ">P10M</tcmd:RentToPurchaseArrangementsRentalPeriod>
    <us-gaap:SalesTypeLeaseLeaseIncomeTableTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_Hlp0OGBP4UepRzglf87zbA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:31.07%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.84%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:31.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Three Months Ended June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Six Months Ended June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:31.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:31.07%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Sales-type lease revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,951&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,537&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 16,732&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.84%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 14,592&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:31.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Cost of sales-type lease revenue&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,852&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 3,175&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 5,567&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 5,911&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:31.07%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Gross profit&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 6,099&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 5,362&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 11,165&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.84%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 8,681&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;font-weight:bold;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:SalesTypeLeaseLeaseIncomeTableTextBlock>
    <us-gaap:SalesTypeLeaseRevenue
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_Qon2ln1qf0i8NHF6TlHR6Q_3_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">8951000</us-gaap:SalesTypeLeaseRevenue>
    <us-gaap:SalesTypeLeaseRevenue
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_GOV63N18hEye23usyrlIDg_3_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">8537000</us-gaap:SalesTypeLeaseRevenue>
    <us-gaap:SalesTypeLeaseRevenue
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_9x3bPEdVf0WblvuNCPWyTQ_3_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">16732000</us-gaap:SalesTypeLeaseRevenue>
    <us-gaap:SalesTypeLeaseRevenue
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_O-hawFzgbEKpudNyqR4VQQ_3_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">14592000</us-gaap:SalesTypeLeaseRevenue>
    <us-gaap:CostOfGoodsSoldSalesTypeLease
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_6MuoTdfOTEyAkT8HkEqZNA_4_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2852000</us-gaap:CostOfGoodsSoldSalesTypeLease>
    <us-gaap:CostOfGoodsSoldSalesTypeLease
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_ExLq8bykaE6hxqkFV8rNuA_4_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">3175000</us-gaap:CostOfGoodsSoldSalesTypeLease>
    <us-gaap:CostOfGoodsSoldSalesTypeLease
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_QBdwcRdNtUSRhSk4YLp-Tw_4_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">5567000</us-gaap:CostOfGoodsSoldSalesTypeLease>
    <us-gaap:CostOfGoodsSoldSalesTypeLease
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_i34JcmqX-0mFyNNw-456_w_4_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">5911000</us-gaap:CostOfGoodsSoldSalesTypeLease>
    <us-gaap:SalesTypeLeaseSellingProfitLoss
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_N_sHXvQqXUKKaANlI5X9Dw_5_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">6099000</us-gaap:SalesTypeLeaseSellingProfitLoss>
    <us-gaap:SalesTypeLeaseSellingProfitLoss
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_SckTk6XHbEmN-yTx9cLwbw_5_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">5362000</us-gaap:SalesTypeLeaseSellingProfitLoss>
    <us-gaap:SalesTypeLeaseSellingProfitLoss
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_Jz238wrpzka1IKaQ0HaAAg_5_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">11165000</us-gaap:SalesTypeLeaseSellingProfitLoss>
    <us-gaap:SalesTypeLeaseSellingProfitLoss
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_sm37liAnfE-yzVsLntnnjQ_5_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">8681000</us-gaap:SalesTypeLeaseSellingProfitLoss>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_Nu3MYR7lf02oDowSLYi-6A">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Note 12. Income Taxes&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-top:2pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We record our interim provision for income taxes by applying our estimated annual effective tax rate to our year-to-date pre-tax income (loss) and adjusting for discrete tax items recorded in the period. Deferred income taxes result from temporary differences between the reporting of amounts for financial statement purposes and income tax purposes. These differences relate primarily to different methods used for income tax reporting purposes, including for depreciation and amortization, warranty and vacation accruals, and deductions related to allowances for doubtful accounts receivable and inventory reserves. Our provision for income taxes includes current federal and state income tax expense, as well as deferred federal and state income tax expense.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:14pt 0pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;The effective tax rate for the three months ended June 30, 2024, was an expense of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;29.2%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;, compared to an expense of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;108.3%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; for the three months ended June 30, 2023. The primary driver of the change in our effective tax rate was attributable to the fact that we did not have a full valuation allowance on our deferred tax assets for the current year period, while the prior year period reported a full valuation allowance. We recorded &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;income tax expense of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$1.8&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million and &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$1.3&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for the three&#160;months ended June 30, 2024&#160;and 2023, respectively.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;The effective tax rate for the six months ended June 30, 2024, was an expense of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;36.0%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;, compared to a benefit of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;44.5%&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; for the six months ended June 30, 2023. The primary driver of the change in our effective tax rate was attributable to the fact that we did not have a full valuation allowance on our deferred tax assets for the current year period, while the prior year period reported a full valuation allowance. Additionally, in the prior year period we had year-to-date losses that we expected to realize, which drove a tax benefit. We recorded an income tax expense of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$1.2&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million and an income tax benefit of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$1.6&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million for the six&#160;months ended June 30, 2024&#160;and 2023, respectively.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:14pt 0pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We recognize the financial statement benefit of a tax position only after determining that the relevant tax authority is more-likely-than-not to sustain the position following an audit. For tax positions meeting the more-likely-than-not threshold, the amount recognized in the condensed consolidated financial statements is the largest benefit that has a greater than 50% likelihood of being realized upon ultimate settlement with the relevant tax authority.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;The Company currently is not under examination in any jurisdictions.&lt;/span&gt;&lt;/p&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="3"
      id="Narr_NfKzgy-vU0at0cdIl7XZkg"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.292</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="3"
      id="Narr_VTmCzK_FXk2FQrGxICoTRg"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">1.083</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-5"
      id="Narr_NDFewFvLDki4NHftqXK0eA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1800000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-5"
      id="Narr_bks1dz-ERkW1h797bxL1nA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1300000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="3"
      id="Narr_yk5otZMpjkuDnJwppgkkhw"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">0.360</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="3"
      id="Narr_8YRQUI0O2Ue4Jz9M3pjPTw"
      unitRef="Unit_Standard_pure_s8zMYI2OlkCCP_rqjbnV2Q">-0.445</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-5"
      id="Narr_Jecz_j8xnkqaibgstajbHA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1200000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-5"
      id="Narr_W3bWGATYn0-Wy493I4DPTg"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-1600000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb__00nhSarN0GHPVckZq-7uw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Note 13. Net Income (Loss) Per Share &lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;The following table sets forth the computation of our basic and diluted net income (loss) per share:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:middle;width:40.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Three Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Six Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands,&#160;except&#160;share and per share data)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;width:40.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Net income (loss)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 4,298&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (100)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,089&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (1,986)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Weighted-average shares outstanding&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 23,873,379&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 23,352,530&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 23,769,604&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 22,323,856&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Weighted-average shares used to compute diluted net income (loss) per share&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 24,099,047&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 23,352,530&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 24,073,986&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 22,323,856&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Net income (loss) per share - Basic&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.18 &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.00 &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.09 &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(0.09)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Net income (loss) per share - Diluted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.18 &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.00 &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.09 &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(0.09)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;The following common stock equivalents were excluded from the computation of diluted net income (loss) per share for the periods presented because including them would have been anti-dilutive:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.96%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Three Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Six Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:38.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:38.32%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Restricted stock units&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 449,056&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 674,178&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 493,370&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 674,178&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Common stock options&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 381,187&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 526,047&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 387,298&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.96%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 526,047&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:38.32%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Performance stock units&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 216,291&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 166,457&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 216,291&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Employee stock purchase plan&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 59,509&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 71,253&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:38.32%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 830,243&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,476,025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,047,125&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.96%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,487,769&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_kkMpO_2kBE-tgg1S4QeAZg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:middle;width:40.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Three Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Six Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands,&#160;except&#160;share and per share data)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;width:40.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Net income (loss)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 4,298&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (100)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 2,089&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (1,986)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Weighted-average shares outstanding&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 23,873,379&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 23,352,530&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 23,769,604&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 22,323,856&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Weighted-average shares used to compute diluted net income (loss) per share&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 24,099,047&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 23,352,530&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 24,073,986&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 22,323,856&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Net income (loss) per share - Basic&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.18 &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.00 &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.09 &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(0.09)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Net income (loss) per share - Diluted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.18 &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.00 &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;0.09 &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(0.09)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="-3"
      id="Tc_6r_CCIkjO0uhuiuD1vfqZg_4_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">4298000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="-3"
      id="Tc_CPikdlv1qkW8CjQ-WwlfyQ_4_6"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-100000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="-3"
      id="Tc_RhXEaO4wkkyJ12zD86_08Q_4_9"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">2089000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="-3"
      id="Tc_imrglIVZvkyIcqDk5--IcQ_4_12"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">-1986000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="0"
      id="Tc_QylHmOD0o0eqHDJoU7shgw_5_3"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23873379</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="0"
      id="Tc_WVKg0v2ZDE-3xgQu0DRtFg_5_6"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23352530</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="0"
      id="Tc_GI_y_L7wMEe5Z76xkYvlXw_5_9"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23769604</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="0"
      id="Tc_JW0evL7lYkiye9Eu7YHceg_5_12"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">22323856</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="0"
      id="Tc_t-vSyAOjykKl6BL3Iw-MCg_6_3"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">24099047</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="0"
      id="Tc_ZaATXYr2Ekixn_Vm-xROIw_6_6"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">23352530</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="0"
      id="Tc_hSHgaIPQGEmjy5BG86YzVg_6_9"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">24073986</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="0"
      id="Tc_0WqAHqb-00SO5M0jCD9CRA_6_12"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">22323856</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="2"
      id="Tc_fgYdfxVVmEmbakTydbwqMA_7_3"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">0.18</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="2"
      id="Tc_NWyig_TVOkenzU4gD8zOiA_7_6"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">0.00</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="2"
      id="Tc_qxhub0jJKEiuhQlDdY_KlQ_7_9"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">0.09</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="2"
      id="Tc_dcMNwx0BJ0mNyPsXBP5F3w_7_12"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">-0.09</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="2"
      id="Tc_h3nJrZhrR0GobcTqLDLKGQ_8_3"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">0.18</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="2"
      id="Tc_Az3TuT3dbEuLVSnOYzsZCA_8_6"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">0.00</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="2"
      id="Tc_TsgevngsREuOofSXTRgaEQ_8_9"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">0.09</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="2"
      id="Tc_xTu-mP7jh0-6e8NLYAP7RQ_8_12"
      unitRef="Unit_Divide_USD_shares_ds6ZilKPCEaLD9TiRd6M0w">-0.09</us-gaap:EarningsPerShareDiluted>
    <us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_xSzENqp3v0-yXMvFAFfO2g">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;table-layout:auto;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.96%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Three Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Six Months Ended&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;white-space:normal;width:27.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;June 30,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:38.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2024&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;2023&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:38.32%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Restricted stock units&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 449,056&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 674,178&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 493,370&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 674,178&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Common stock options&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 381,187&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 526,047&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 387,298&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.96%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 526,047&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:38.32%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Performance stock units&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 216,291&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 166,457&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 216,291&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:38.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Employee stock purchase plan&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 59,509&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; &#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 71,253&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:38.32%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:2.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 830,243&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,476,025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,047,125&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:3.71%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:normal;width:11.96%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,487,769&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_RestrictedStockUnitsRSUMember_M8bwANlicUyp4UMd2DYGnw"
      decimals="INF"
      id="Tc_f-TlpbWTvUWYC5SfINUSWw_4_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">449056</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_RestrictedStockUnitsRSUMember_0fyztw3pZ0Ck4S5Rd4qPaQ"
      decimals="INF"
      id="Tc_WTyc64XO9E2PpSs0IW18dg_4_4"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">674178</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_RestrictedStockUnitsRSUMember_S_7Y6L1IfkK9ZbacgJL_UQ"
      decimals="INF"
      id="Tc__AjncyfgoEqakcmFj-gwuQ_4_6"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">493370</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_RestrictedStockUnitsRSUMember___2iBiea5UW-ySNG9DDcaw"
      decimals="INF"
      id="Tc_YI7fsVLIcESsu4bemYmQPg_4_8"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">674178</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_4_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_Kt6hW1pnpkKs8upy3ghAyw"
      decimals="INF"
      id="Tc_IUiMyDYQ70GbE7aG6-F-SA_5_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">381187</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_MS_n4NomJ0y-fIQkng-UhA"
      decimals="INF"
      id="Tc_1kch7S9GUECyymmN2BlPEg_5_4"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">526047</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_t70kxCemN0GAg3UkgZAlEg"
      decimals="INF"
      id="Tc_puR3t9jHG0StLJRr4azOFQ_5_6"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">387298</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_EmployeeStockOptionMember_kgt3EaukG0mwoUflL2zEEA"
      decimals="INF"
      id="Tc_10P0s96iX0mzKxAvuUDB9w_5_8"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">526047</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_PerformanceSharesMember_KBZZhhs7H06AdsnOifKtWg"
      decimals="INF"
      id="Tc_AjCE9hk2u0uqqg3ZFTntHg_6_4"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">216291</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_1_1_2024_To_6_30_2024_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_PerformanceSharesMember_6HAJIqeyEUaiQToYtAfdMA"
      decimals="INF"
      id="Tc_oDtf9JpfN0GVEZtc0oMPRQ_6_6"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">166457</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_PerformanceSharesMember_-DbZ9k1740Ca5jSHVP2-YA"
      decimals="INF"
      id="Tc___Czokc-r0WIrpEUh_uakg_6_8"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">216291</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_4_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_tcmd_EmployeeStockPurchasePlanMember_HFiQtM9gRESidV_6HnkPUQ"
      decimals="INF"
      id="Tc_Jw3eU9jPMUWaXxUE8qYHOw_7_4"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">59509</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_1_1_2023_To_6_30_2023_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_tcmd_EmployeeStockPurchasePlanMember_HbQNm2DRHkyAH6uTjVt-JQ"
      decimals="INF"
      id="Tc_Qf8w480ppE2WE8wSt8jn-Q_7_8"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">71253</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      decimals="INF"
      id="Tc_9rIPfxb3ZkKmkAR_Q5WaZQ_8_2"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">830243</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_4_1_2023_To_6_30_2023_gp689Kcpu0e1EfR1qt3WaQ"
      decimals="INF"
      id="Tc_rRedwejo_EiU6Vq4YCG7OA_8_4"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">1476025</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      decimals="INF"
      id="Tc_phl9cvoXyU6Tr-CLwCGA9w_8_6"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">1047125</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_1_1_2023_To_6_30_2023_WOcouVHD9EG7IvhmZ54-XA"
      decimals="INF"
      id="Tc_5zWnvmv5kEm8CqkhN55UIg_8_8"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">1487769</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_TyFNOb_pdUGEfWGG9Fv_DQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;"&gt;Note 14. Fair Value Measurements&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;We determine the fair value of our assets and liabilities based on the exchange price that would be received for an asset or paid to transfer a liability (exit price) in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants on the measurement date. Valuation techniques used to measure fair value maximize the use of observable inputs and minimize the use of unobservable inputs. We use a fair value hierarchy with three levels of inputs, of which the first two are considered observable and the last unobservable, to measure fair value. The fair value hierarchy gives the highest priority to quoted prices in active markets for identical assets or liabilities (Level 1). The next highest priority is based on quoted prices for similar assets or liabilities in active markets or quoted prices for identical &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;or similar assets or liabilities in non-active markets or other observable inputs (Level 2). The lowest priority is given to unobservable inputs (Level 3).&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;As of June 30, 2024, our obligations under the AffloVest Acquisition earn-out arrangements had been paid in full. Prior to the determination of the actual amount of the earn-out, the earn-out liability was valued by employing a Monte Carlo Simulation model in a risk-neutral framework, which is a Level 3 input. The underlying simulated variable included recognized revenue. The recognized revenue volatility estimate was based on a study of historical asset volatility for a set of comparable public companies. The model included other assumptions including the market price of risk, which was calculated as the weighted average cost of capital less the long-term risk-free rate. The earn-out liability was adjusted to fair value at each reporting date until the end of the earn-out period, which was September 30, 2023. Changes in fair value were included in intangible asset amortization and earn-out expenses in our Condensed Consolidated Statements of Operations.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Changes in the earn-out liability measured at fair value using Level 3 inputs were as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:69.86%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.65%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:23.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:26.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:69.86%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Earn-out liability at December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.65%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:23.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 13,050&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:69.86%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Payment on earn-out&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:23.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (5,000)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:69.86%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Fair value adjustments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.65%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:23.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,230&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:69.86%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Earn-out liability at June 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:23.09%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 9,280&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;On May 25, 2023, the Company paid &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$5.0&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million, plus an imputed interest payment of &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$250,000&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;, relating to the initial earn-out. Subsequent to September 30, 2023, it was determined that the calculated amount of the second earn-out payment was &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$5.6&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; million, which was paid by the Company on November 28, 2023. &lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:36.58%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.07%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.79%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;The carrying amounts of financial instruments such as cash equivalents, accounts receivable, other assets, accounts payable, accrued expenses and other liabilities approximate their related fair values due to the short-term maturities of these items. Non-financial assets, such as equipment and leasehold improvements, and intangible assets are subject to non-recurring fair value measurements if they are deemed impaired.&lt;/span&gt;&lt;/p&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock
      contextRef="Duration_1_1_2024_To_6_30_2024_hSzSjhOjwEGyZn2kuGjH6w"
      id="Tb_KgJHQ9lpbkm3YaOQ8xxz_A">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:69.86%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.65%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:23.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;(In&#160;thousands)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:26.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:69.86%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Earn-out liability at December 31, 2022&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.65%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:23.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 13,050&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:69.86%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Payment on earn-out&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:23.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; (5,000)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:69.86%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 6pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Fair value adjustments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.65%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:23.09%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 1,230&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:69.86%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;Earn-out liability at June 30, 2023&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:23.09%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';"&gt; 9,280&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="As_Of_12_31_2022_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_PWbhMQM71UGkkKLgVkOZYg"
      decimals="-3"
      id="Tc_iWClCGa5eEOy8x8RtEDMzA_2_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">13050000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities
      contextRef="Duration_1_1_2023_To_3_31_2023_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_t0C16WESXk2zbF3G31Itxg"
      decimals="-3"
      id="Tc_EyS2c68NxkSTdi98UdZoHg_3_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">5000000</us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="Duration_1_1_2023_To_3_31_2023_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_t0C16WESXk2zbF3G31Itxg"
      decimals="-3"
      id="Tc__kfUWcfgWkqlH2lA0yRk_w_4_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">1230000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="As_Of_3_31_2023_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_sFbAx9XpD0K-bSWi9be0RQ"
      decimals="-3"
      id="Tc_CRUrkcf_YEeP4jG9wNLT4g_5_3"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">9280000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities
      contextRef="Duration_5_25_2023_To_5_25_2023_pzXlr5QgaUOGWFu4gYChbQ"
      decimals="-5"
      id="Narr_9wJModvDc0uEODhDgdsXTA"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">5000000.0</us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities>
    <tcmd:BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment
      contextRef="Duration_5_25_2023_To_5_25_2023_pzXlr5QgaUOGWFu4gYChbQ"
      decimals="0"
      id="Narr_97ancVtqOE-YfPld_13tuw"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">250000</tcmd:BusinessCombinationContingentConsiderationLiabilityImputedInterestPayment>
    <us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities
      contextRef="Duration_11_28_2023_To_11_28_2023_SKtlU9g6_ECOEbD8aG-BaA"
      decimals="-5"
      id="Narr_oJOHQZh300ONTNFhBbeK9w"
      unitRef="Unit_Standard_USD_zTLbh5bB0UCbtBes9MSmtA">5600000</us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities>
    <ecd:MtrlTermsOfTrdArrTextBlock
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_lIPhxvLYvEawCTUwfXvdhQ"
      id="Tb_ark3eLNZL0aHAR9KtxJLtg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;padding-top:2pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;On &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;May 15, 2024&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;Kristie T. Burns&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;, our &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;Senior VP Marketing and Clinical Affairs&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;adopted&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; a pre-arranged trading plan that is intended to satisfy the affirmative defense of Rule 10b5-1(c) of the Exchange Act. This plan provides for the sale of up to &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;7,444&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; shares of our common stock in the aggregate and terminates on the earlier of the close of market on &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;August 26, 2025&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;, or the date all shares are sold thereunder.&lt;/span&gt;&lt;/p&gt;</ecd:MtrlTermsOfTrdArrTextBlock>
    <ecd:TrdArrAdoptionDate
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_lIPhxvLYvEawCTUwfXvdhQ"
      id="Narr_psBotJ7HQk-tWUNSy46Rpw">May 15, 2024</ecd:TrdArrAdoptionDate>
    <ecd:TrdArrIndName
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_lIPhxvLYvEawCTUwfXvdhQ"
      id="Narr_dMgw0jh8SEy_9w_7LzynDg">Kristie T. Burns</ecd:TrdArrIndName>
    <ecd:TrdArrIndTitle
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_lIPhxvLYvEawCTUwfXvdhQ"
      id="Narr_2Hy_7jJv_0WCfaHOo_CREw">Senior VP Marketing and Clinical Affairs</ecd:TrdArrIndTitle>
    <ecd:Rule10b51ArrAdoptedFlag
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_lIPhxvLYvEawCTUwfXvdhQ"
      id="Narr_1nrgpPJS1kGjSy94Bj5w_A">true</ecd:Rule10b51ArrAdoptedFlag>
    <ecd:TrdArrSecuritiesAggAvailAmt
      contextRef="As_Of_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_QzV45OSiZEmFAc-892qXUw"
      decimals="INF"
      id="Narr_uF_-xBgKwkCw28rgUfX2qg"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">7444</ecd:TrdArrSecuritiesAggAvailAmt>
    <ecd:TrdArrExpirationDate
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_KristieT.BurnsMember_lIPhxvLYvEawCTUwfXvdhQ"
      id="Narr_M8q9LpTQQEyr5GtwgKim5A">August 26, 2025</ecd:TrdArrExpirationDate>
    <ecd:MtrlTermsOfTrdArrTextBlock
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_N-NgVtIWB0uz0iz8rSkamg"
      id="Tb_dSpvDwO080-__mgsjdSiHg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;On &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;May 28, 2024&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;William W. Burke&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;Chairman of our Board of Directors&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;adopted&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; a pre-arranged trading plan that is intended to satisfy the affirmative defense of Rule 10b5-1(c) of the Exchange Act. This plan provides for the sale of up to &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;7,013&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; shares of our common stock in the aggregate and terminates on the earlier of the close of market on &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;December 31, 2025&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;, or the date all shares are sold thereunder.&lt;/span&gt;&lt;/p&gt;</ecd:MtrlTermsOfTrdArrTextBlock>
    <ecd:TrdArrAdoptionDate
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_N-NgVtIWB0uz0iz8rSkamg"
      id="Narr_ReuKjzxrj0ql_93Bocja6g">May 28, 2024</ecd:TrdArrAdoptionDate>
    <ecd:TrdArrIndName
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_N-NgVtIWB0uz0iz8rSkamg"
      id="Narr_97ceSjkwCE-ecUTIi_h4cw">William W. Burke</ecd:TrdArrIndName>
    <ecd:TrdArrIndTitle
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_N-NgVtIWB0uz0iz8rSkamg"
      id="Narr_Q3h2RuHabUqQ9iphKCi5bQ">Chairman of our Board of Directors</ecd:TrdArrIndTitle>
    <ecd:Rule10b51ArrAdoptedFlag
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_N-NgVtIWB0uz0iz8rSkamg"
      id="Narr_bMJTbtkfskKr_Bb7U3_NDg">true</ecd:Rule10b51ArrAdoptedFlag>
    <ecd:TrdArrSecuritiesAggAvailAmt
      contextRef="As_Of_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_rC46QBunc0aHkmL3cYaEgw"
      decimals="INF"
      id="Narr_penASaVZg0iur6dkDuHBQQ"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">7013</ecd:TrdArrSecuritiesAggAvailAmt>
    <ecd:TrdArrExpirationDate
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_WilliamW.BurkeMember_N-NgVtIWB0uz0iz8rSkamg"
      id="Narr_IOf22S5rpkyAqSa9p2WCdA">December 31, 2025</ecd:TrdArrExpirationDate>
    <ecd:MtrlTermsOfTrdArrTextBlock
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pYblZjnHZ0elVdb0CekXcQ"
      id="Tb_f3zCpzQKUUe0IgWUGwBQAg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;On &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;June 10, 2024&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;Elaine M. Birkemeyer&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;Chief Financial Officer&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;adopted&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; a pre-arranged trading plan that is intended to satisfy the affirmative defense of Rule 10b5-1(c) of the Exchange Act. This plan provides for the sale of up to &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;84,848&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; shares of our common stock in the aggregate and terminates on the earlier of the close of market on &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;December 31, 2027&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;, or the date all shares are sold thereunder.&lt;/span&gt;&lt;/p&gt;</ecd:MtrlTermsOfTrdArrTextBlock>
    <ecd:TrdArrAdoptionDate
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pYblZjnHZ0elVdb0CekXcQ"
      id="Narr_IZVYLbVik0eHEFkvIV-mgg">June 10, 2024</ecd:TrdArrAdoptionDate>
    <ecd:TrdArrIndName
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pYblZjnHZ0elVdb0CekXcQ"
      id="Narr_J6_GtCZg1kKHBOcWWM7snQ">Elaine M. Birkemeyer</ecd:TrdArrIndName>
    <ecd:TrdArrIndTitle
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pYblZjnHZ0elVdb0CekXcQ"
      id="Narr_aaTzTYfpiUW5T0Uuf1LHrQ">Chief Financial Officer</ecd:TrdArrIndTitle>
    <ecd:Rule10b51ArrAdoptedFlag
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pYblZjnHZ0elVdb0CekXcQ"
      id="Narr_GQUEgkYulEyXsdQybFd12A">true</ecd:Rule10b51ArrAdoptedFlag>
    <ecd:TrdArrSecuritiesAggAvailAmt
      contextRef="As_Of_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pXRqFx4TIUi4vue3wwdTrQ"
      decimals="INF"
      id="Narr_bfSyZCL03UGlirb469FhnA"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">84848</ecd:TrdArrSecuritiesAggAvailAmt>
    <ecd:TrdArrExpirationDate
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_ElaineM.BirkemeyerMember_pYblZjnHZ0elVdb0CekXcQ"
      id="Narr_BBtNfijXWkOhLcTV73oNMg">December 31, 2027</ecd:TrdArrExpirationDate>
    <ecd:MtrlTermsOfTrdArrTextBlock
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_NAJ6PimfhkC86HlglviaIQ"
      id="Tb_szzsm9M0_EeR6rWdrp3twQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;text-indent:36pt;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;On &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;June 10, 2024&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;Daniel L. Reuvers&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;former Chief Executive Officer and current member of our Board of Directors&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;adopted&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; a pre-arranged trading plan that is intended to satisfy the affirmative defense of Rule 10b5-1(c) of the Exchange Act. This plan provides for the sale of up to &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;130,564&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt; shares of our common stock in &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:12pt;padding-bottom:14pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;the aggregate and terminates on the earlier of the close of market on &lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;December 31, 2025&lt;/span&gt;&lt;span style="font-family:'Arial','Helvetica','sans-serif';font-size:10pt;"&gt;, or the date all shares are sold thereunder.&lt;/span&gt;&lt;/p&gt;</ecd:MtrlTermsOfTrdArrTextBlock>
    <ecd:TrdArrAdoptionDate
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_NAJ6PimfhkC86HlglviaIQ"
      id="Narr_trVv3__OeEGOVhhwDV-gQw">June 10, 2024</ecd:TrdArrAdoptionDate>
    <ecd:TrdArrIndName
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_NAJ6PimfhkC86HlglviaIQ"
      id="Narr_Q160r0P81kG7xfNnQsfOnQ">Daniel L. Reuvers</ecd:TrdArrIndName>
    <ecd:TrdArrIndTitle
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_NAJ6PimfhkC86HlglviaIQ"
      id="Narr_pY1YMTd9fEW1iWiOlQmQMQ">former Chief Executive Officer and current member of our Board of Directors</ecd:TrdArrIndTitle>
    <ecd:Rule10b51ArrAdoptedFlag
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_NAJ6PimfhkC86HlglviaIQ"
      id="Narr_j6GeaeUUFE6JwpgBclMLBw">true</ecd:Rule10b51ArrAdoptedFlag>
    <ecd:TrdArrSecuritiesAggAvailAmt
      contextRef="As_Of_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_SZhqDQwQQkKluRcxCBVMnw"
      decimals="INF"
      id="Narr_vkt4U_0yykKEt8tzpelYZA"
      unitRef="Unit_Standard_shares_cIwaM89o5UGX5wIsvLDSGA">130564</ecd:TrdArrSecuritiesAggAvailAmt>
    <ecd:TrdArrExpirationDate
      contextRef="Duration_4_1_2024_To_6_30_2024_ecd_IndividualAxis_tcmd_DanielL.ReuversMember_NAJ6PimfhkC86HlglviaIQ"
      id="Narr_jJJ6SNLink6RVkgZ1Lk4TQ">December 31, 2025</ecd:TrdArrExpirationDate>
    <ecd:NonRule10b51ArrAdoptedFlag
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      id="Narr_1JqxgELOsEK77aNkEZDbhA">false</ecd:NonRule10b51ArrAdoptedFlag>
    <ecd:Rule10b51ArrTrmntdFlag
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      id="Narr_0VU4JZK1CEOE28Gj12fADA">false</ecd:Rule10b51ArrTrmntdFlag>
    <ecd:Rule10b51ArrAdoptedFlag
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      id="Narr_etvjN5kp6EOofeBBVgRVRw">false</ecd:Rule10b51ArrAdoptedFlag>
    <ecd:NonRule10b51ArrTrmntdFlag
      contextRef="Duration_4_1_2024_To_6_30_2024_w1RsVDZR4EqZIBrV2IrBTQ"
      id="Narr_MipY2s8dcEe5KXMyJY5KaQ">false</ecd:NonRule10b51ArrTrmntdFlag>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
